2012-02-04 25 views
21

Tôi đang cố gắng để cháy lên rails dbconsole trên Heroku nhưng nhận được lỗi sau:Heroku có hỗ trợ `đường ray dbconsole` không?

heroku run rails dbconsole 
# => Couldn't find database client: psql. Check your $PATH and try again 

Có thể sử dụng dbconsole trên Heroku? Nếu không có một khách hàng khác có thể được sử dụng?

Trả lời

42

https://devcenter.heroku.com/articles/heroku-postgresql - "Bạn phải cài đặt PostgreSQL trên hệ thống của bạn để sử dụng Heroku PG: psql". Vì vậy, có thể bạn đang thiếu PostgreSQL trên máy tính của bạn. Nếu đó không phải là trường hợp, sau đó thử lệnh này khác để đến Postgres console thay vì:

heroku pg:psql 

"psql là mẹ đẻ PostgreSQL thiết bị đầu cuối tương tác và được sử dụng để thực hiện các truy vấn và vấn đề lệnh để cơ sở dữ liệu được kết nối."

+0

Điều này làm việc cho tôi. –

+0

Thật kỳ lạ, khoảng một năm trước, tôi đã có thể sử dụng đường chạy heroku dbconsole trên tất cả các máy của tôi, bây giờ nó nói # => Không thể tìm thấy khách hàng cơ sở dữ liệu: psql. Kiểm tra $ PATH của bạn và thử lại Tất nhiên tôi có psql trong PATH của tôi, còn gì nữa, việc thêm lệnh PATH =/usr/local/bin vào lệnh heroku không giúp được gì – januszm

8

Tôi nghĩ heroku-sql-console nên cung cấp chức năng tương tự, nhưng khi tôi cố gắng chạy nó tôi đã nhận lỗi này:

 
undefined local variable or method `app' for # (NameError) 

Đã reported as a bug nhưng không có sửa chữa hoặc workaround.

Cập nhật: Như @Alban đề xuất, khắc phục sự cố này là cập nhật ứng dụng khách. Tôi đã phải chạy gem update heroku để thực hiện việc này.

+1

Briliant - cảm ơn Luke, đã làm việc một điều trị –

+1

Heroku bây giờ nói rằng điều này không được chấp nhận – Evan

+0

Câu trả lời của Chase T có hiệu quả đối với tôi. –

3

Như Luke nói, bạn có thể sử dụng heroku-sql-console. Nhưng trước tiên hãy chắc chắn rằng bạn đang sử dụng client Heroku mới nhất:

> heroku update
+2

Cảm ơn vì điều đó Alban –

0

Is it possible to use the dbconsole on Heroku? If not is there another client that can be used?

Bạn có thể sử dụng ứng dụng khách trực tuyến nếu bạn sử dụng activeadmin.

Chỉ cần thêm đá quý activeadmin-sqlpage:

gem 'activeadmin-sqlpage' 

Và tạo trang activeadmin:

# file app/admin/sql.rb 
ActiveAdmin::SqlPage::register 

Khởi động lại máy chủ của bạn. Sau đó chuyển đến bảng điều khiển quản trị và điều hướng menu SQL. Nhập bất kỳ lệnh sql nào và nhấn nút Ctrl+Enter hoặc Submit.

Các vấn đề liên quan