rails ruby-on-rails ruby config environment

ruby on rails - rails - Al obtener config.eager_load se establece en nil al intentar ejecutar los rieles c en prueba



rails environment variables (4)

Asegúrate de tener tu

  • producción.rb

  • desarrollo.rb

  • test.rb

Archivos en configuración / entornos / carpeta.

Estoy tratando de correr la consola de rieles ( 4.1.2 )

rails c RAILS_ENV=test

Y estoy recibiendo esto:

> config.eager_load is set to nil. Please update your > config/environments/*.rb files accordingly: > > * development - set it to false * test - set it to false (unless > you use a tool that preloads your test environment) * production - > set it to true > > /Users/xxxxxx/.rvm/gems/ruby-2.2.2/gems/activerecord-4.1.12/lib/active_record/connection_adapters/connection_specification.rb:257:in > `resolve_symbol_connection'': ''RAILS_ENV=test'' database is not > configured. Available: ["development", "test", "production"] > (ActiveRecord::AdapterNotSpecified)

Sin embargo, en mi test.rb tengo config.eager_load = false y mi database.yml está bien (ejecuté rake db:schema:load RAILS_ENV=test sin problemas.

¿Como puedo resolver esto?


Debe declarar el env antes de ejecutar los comandos:

RAILS_ENV=test bundle exec rails c

Tengo la misma salida en mi computadora:

> bundle exec rails c RAILS_ENV=test ian@Ians-MacBook-Pro config.eager_load is set to nil. Please update your config/environments/*.rb files accordingly: * development - set it to false * test - set it to false (unless you use a tool that preloads your test environment) * production - set it to true

pero cuando corro como se sugiere:

> RAILS_ENV=test bundle exec rails c ian@Ians-MacBook-Pro Loading test environment (Rails 4.2.3)


En Windows hay un error con RAILS_ENV . Si tu corres

SET RAILS_ENV=development<SPACE> <- with a space symbol after word "development"

entonces obtendrá el error:

config.eager_load is set to nil. Please update your config/environments/*.rb fil es accordingly:

Al hacer rails server webrick .

Así que asegúrate de escribir sin un espacio al final (y sin comillas)

SET RAILS_ENV=development<ENTER>

Lo mismo se aplica a todos los entornos: prueba, producción y desarrollo.


En cuanto a los sistemas Windows:

  1. Esto debería hacer:

    rails c -e test

  2. O establece RAILS_ENV variable RAILS_ENV :

    set RAILS_ENV=test rails c