Ответ 1
Хотя это не решение, попробуйте запустить Rails-сервер таким образом:
RAILS_ENV=development bundle exec rails s
Что вы видите, если положить <%= Rails.env %>
где-нибудь в вашем файле макета?
В документации рельсов (3.2.3) говорится:
В режиме разработки (как вы работаете по умолчанию) Rails перезагружает ваше приложение с каждым запросом браузера, поэтому нет необходимости останавливать и перезапускать веб-сервер.
Но, очевидно, мое приложение загружается в режиме производства из коробки. (Я могу набрать Rails.env и посмотреть его).
Почему?
Затем перейдите в environment.rb и добавьте
ENV["RAILS_ENV"] = "development"
и все же он находится в производстве. Есть идеи?
Изменить: здесь вы идете
#Load the rails application
require File.expand_path('../application', __FILE__)
# Initialize the rails application
MyAppName::Application.initialize!
ENV["RAILS_ENV"] = "development"
Хотя это не решение, попробуйте запустить Rails-сервер таким образом:
RAILS_ENV=development bundle exec rails s
Что вы видите, если положить <%= Rails.env %>
где-нибудь в вашем файле макета?
Возможным решением для вашей ситуации может быть:
rails server -e development
Если вы используете Phusion Passenger, добавьте следующее в файл конфигурации виртуального хоста:
RailsEnv development
Другими словами, в моей системе вы бы установили vim/etc/apache2/sites-available/[имя приложения], чтобы он выглядел следующим образом:
<VirtualHost *>
ServerName example.com
DocumentRoot /home/yourname/htdocs/example.com/public
RailsEnv development
</VirtualHost>
Затем вам необходимо перезапустить веб-сервер:
sudo /etc/init.d/apache2 reload
Кредит: http://my.opera.com/williamn/blog/2009/03/03/how-to-make-phusion-passenger-run-in-development-mode