exécution de la console Rails en production

105

Je viens de mettre en ligne mon premier site Rails, mais maintenant j'ai un problème. Lorsque je lance le projet en mode développement sur mon IDE, je peux exécuter la console sur quelque chose comme:

User.first.name='whatever' pour changer le nom d'un utilisateur.

Comment accomplir la même tâche sur un site en direct en mode production?

nFinIt_loop
la source

Réponses:

182

si vous utilisez des rails 3.0 ou plus, vous pouvez également utiliser

rails console production

la production peut bien sûr être remplacée par developmentou test(la valeur est developmentpar défaut)

L'ajout de l'option --sandboxfait en sorte que toutes les modifications que vous apportez à votre base de données dans la console seront annulées après votre sortie

Si cela ne fonctionne pas pour vous, vous devrez peut-être essayer

bundle exec rails console production

Si vous essayez d'exécuter la console rails sur votre serveur de production, essayez de googler "run rails console [votre fournisseur d'hébergement cloud]", par exemple "run rails console heroku"

À partir de Rails 6, vous devez utiliser

RAILS_ENV=production bundle exec rails c

ou

RAILS_ENV=production rails c

selon votre configuration

Peter Berg
la source
53

Plutôt facile:

RAILS_ENV=production rails console
rocher
la source
23

Si vous avez déjà déployé votre site sur le serveur, vous pouvez également utiliser:

bundle exec rails console production

... dans la racine Web de votre application rails. C'est-à-dire si vous n'avez pas encore installé le package rails directement sur le serveur ou si vous souhaitez exécuter la console dans le contexte de votre application Web.

RNickMcCandless
la source
1
... en particulier dans Rails 4.
IAmNaN
6

Remarque: Cette réponse suppose que vous utilisez Heroku comme service d'hébergement.

Cela dépend du service d'hébergement que vous utilisez. Pour Heroku, vous pouvez accéder à votre terminal et saisir

heroku run rails console

Cela chargera la console de rails pour votre site de production et vous permettra de créer des enregistrements pour votre site en direct.

Vous pouvez également examiner l' amorçage d'une base de données, mais cela est généralement destiné aux tests. RailsCasts a quelques vidéos sur le sujet mais elles sont un peu dépassées.

jason328
la source
6

Essayez ci-dessous la commande.

  rails c -e production
Pratap
la source
-1

aujourd'hui avec des rails 6 tournent en console RAILS_ENV=production rails console

daniel0318
la source