ejecutando la consola Rails en producción

105

Acabo de publicar mi primer sitio de Rails, pero ahora tengo un problema. Cuando ejecuto el proyecto en modo de desarrollo en mi IDE, puedo ejecutar la consola en algo como:

User.first.name='whatever' para cambiar el nombre de un usuario.

¿Cómo logro la misma tarea en un sitio en vivo en modo de producción?

nFinIt_loop
fuente

Respuestas:

182

si está ejecutando rails 3.0 o superior, también puede usar

rails console production

Por supuesto, la producción se puede sustituir con developmento test(el valor es developmentpor defecto)

Agregar la opción --sandboxhace que cualquier cambio que realice en su base de datos en la consola se deshaga después de salir

Si esto no le funciona, es posible que deba intentar

bundle exec rails console production

Si realmente está intentando ejecutar la consola de rails en su servidor de producción, intente buscar en Google "ejecutar la consola de rails [su proveedor de alojamiento en la nube]", por ejemplo, "ejecutar la consola de rails heroku"

A partir de Rails 6 necesitas usar

RAILS_ENV=production bundle exec rails c

o

RAILS_ENV=production rails c

dependiendo de su configuración

Peter Berg
fuente
53

Muy fácil:

RAILS_ENV=production rails console
roca
fuente
23

Si ya ha implementado su sitio en el servidor, también puede usar:

bundle exec rails console production

... en la raíz web de su aplicación rails. Eso es si aún no ha instalado el paquete rails directamente en el servidor o si desea ejecutar la consola dentro del contexto de su aplicación web.

RNickMcCandless
fuente
1
... especialmente en Rails 4.
IAmNaN
6

Nota: Esta respuesta asume que está utilizando Heroku como su servicio de alojamiento.

Depende del servicio de alojamiento que esté utilizando. Para Heroku, puede ir a su terminal y escribir

heroku run rails console

Esto cargará la consola de rieles para su sitio de producción y le permitirá crear registros para su sitio en vivo.

También puede buscar la siembra de una base de datos, pero eso generalmente está destinado a pruebas. RailsCasts tiene algunos videos sobre el tema, pero están un poco desactualizados.

jason328
fuente
6

Pruebe el siguiente comando.

  rails c -e production
Pratap
fuente
-1

hoy con rieles 6 corren en consola RAILS_ENV=production rails console

daniel0318
fuente