esecuzione della console Rails in produzione


105

Ho appena pubblicato il mio primo sito Rails, ma ora ho un problema. Quando eseguo il progetto in modalità di sviluppo sul mio IDE, posso eseguire la console su qualcosa del tipo:

User.first.name='whatever' per modificare il nome di un utente.

Come si esegue la stessa operazione su un sito live in modalità di produzione?

Risposte:


182

se utilizzi rails 3.0 o versioni successive, puoi anche utilizzare

rails console production

la produzione può ovviamente essere sostituita con developmento test(il valore è developmentpredefinito)

L'aggiunta dell'opzione --sandboxfa in modo che tutte le modifiche apportate al database nella console vengano annullate dopo l'uscita

Se questo non funziona per te, potresti dover provare

bundle exec rails console production

Se stai effettivamente tentando di eseguire la console rails sul tuo server di produzione, prova a cercare su Google "run rails console [il tuo provider di hosting cloud]" ad esempio "run rails console heroku"

A partire da Rails 6 devi usare

RAILS_ENV=production bundle exec rails c

o

RAILS_ENV=production rails c

a seconda della configurazione


53

Molto facile:

RAILS_ENV=production rails console

23

Se hai già distribuito il tuo sito al server, puoi anche utilizzare:

bundle exec rails console production

... nella webroot della tua app rails. Cioè se non hai ancora installato il pacchetto rails direttamente sul server o se vuoi eseguire la console nel contesto della tua app web.


1
... specialmente così in Rails 4.
IAmNaN

6

Nota: questa risposta presuppone che tu stia utilizzando Heroku come servizio di hosting.

Dipende dal servizio di hosting che stai utilizzando. Per Heroku, puoi andare al tuo terminale e digitare

heroku run rails console

Questo caricherà la console rails per il tuo sito di produzione e ti permetterà di creare record per il tuo sito live.

Puoi anche esaminare il seeding di un database, ma generalmente è pensato per il test. RailsCasts ha alcuni video sull'argomento ma sono un po 'obsoleti.


6

Prova sotto il comando.

  rails c -e production

-1

oggi con rails 6 eseguito in console RAILS_ENV=production rails console

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.