2012-02-04 14 views
21

sto cercando di accendere rails dbconsole su Heroku, ma ottenere il seguente errore:Heroku supporta `rails dbconsole`?

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

E 'possibile utilizzare il dbconsole su Heroku? Se no, c'è un altro cliente che può essere usato?

risposta

42

https://devcenter.heroku.com/articles/heroku-postgresql - "Devi aver PostgreSQL installato sul proprio sistema di utilizzare Heroku PG: psql". Quindi forse manchi PostgreSQL sul tuo computer. Se questo non è il caso, quindi provare questo altro comando per ottenere alla console Postgres invece:

heroku pg:psql 

"psql è il terminale interattivo nativo PostgreSQL e viene utilizzato per eseguire query e inviare comandi al database connesso."

+0

Questo ha funzionato per me. –

+0

Strano, circa un anno fa sono stato in grado di utilizzare heroku run rails dbconsole su tutte le mie macchine, ora dice che = => Impossibile trovare il client di database: psql. Controlla il tuo $ PATH e riprova Ovviamente ho psql nel mio PERCORSO, per di più, l'aggiunta di PATH =/usr/local/bin al comando heroku non ha aiutato – januszm

8

Penso heroku-sql-console dovrebbe fornire funzionalità simili, ma quando ho provato a fare funzionare lo ho ottenuto questo errore:

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

E 'stato reported as a bug ma non c'è alcuna correzione o una soluzione alternativa.

Aggiornamento: come suggerisce @Alban, la correzione di questo problema è l'aggiornamento del client. Ho dovuto eseguire gem update heroku per fare questo.

+1

Briliant - grazie Luca, ha funzionato a meraviglia –

+1

Heroku ora dice che è deprecato – Evan

+0

La risposta di Chase T ha funzionato per me. –

3

Come dice Luke, è possibile utilizzare heroku-sql-console. Ma prima assicurarsi che si sta utilizzando l'ultimo client Heroku:

> heroku update
+2

Grazie per quello Alban –

0

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

È possibile utilizzare il client di database online se si utilizza activeadmin.

Basta aggiungere la gemma activeadmin-sqlpage:

gem 'activeadmin-sqlpage' 

e creare pagina activeadmin:

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

Riavviare il server. Quindi vai al pannello di amministrazione e naviga nel menu SQL. Immettere qualsiasi comando sql e premere il pulsante Ctrl+Enter o Submit.