#ruby-on-rails
#ruby-on-rails
Вопрос:
$ RAILS_ENV=dev bundle exec rails c
Loading dev environment (Rails 4.0.4)
[1] pry(main)> exit
$ bundle exec rails c RAILS_ENV=dev
error occur...
Есть разница между этими двумя командами запуска rails?
Комментарии:
1. ДА. Одна работает; другая ломается.
Ответ №1:
Да, они разные, что также показано результатом!
RAILS_ENV=dev bundle exec rails c
установит переменную, RAILS_ENV
равную dev
, которая становится доступной перед bundle exec rails c
выполнением. Итак, bundle exec rails c
увидит эту переменную и будет использовать ее.
С помощью bundle exec rails c RAILS_ENV=dev
, RAILS_ENV=dev
становится параметром для bundle exec rails c
, и поскольку RAILS_ENV=dev
, литерал считается средой, потому что первым аргументом для rails c
, если он указан, является среда. Вероятно, ошибка связана с тем, что у вас нет среды по имени RAILS_ENV=dev
.
Чтобы успешно выполнить вторую команду, вы могли бы сделать: bundle exec rails c dev
.