12

在 rails (3.2.3) 的文档中它说

在开发模式下(这是您默认的工作模式),Rails 会在每次浏览器请求时重新加载您的应用程序,因此无需停止和重新启动 Web 服务器。

但很明显,我的应用程序在开箱即用的生产模式下加载。(我可以输入 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"
4

3 回答 3

23

针对您的情况的可能解决方案可能是:

rails server -e development
于 2012-05-26T18:13:53.160 回答
19

虽然这不是解决方案,但请尝试以这种方式启动 Rails 服务器:

RAILS_ENV=development bundle exec rails s

如果放在<%= Rails.env %>布局文件的某个位置,你会看到什么?

于 2012-05-26T23:09:53.007 回答
8

如果您使用的是 Phusion Passenger,则将以下内容添加到您的虚拟主机配置文件中:

   RailsEnv development

换句话说,在我的系统上,你可以 vim /etc/apache2/sites-available/[name of app] 使它看起来像下面这样:

   <VirtualHost *>
   ServerName example.com
   DocumentRoot /home/yourname/htdocs/example.com/public
   RailsEnv development
   </VirtualHost>

然后,您需要重新启动 Web 服务器:

   sudo /etc/init.d/apache2 reload

归功于: http: //my.opera.com/williamn/blog/2009/03/03/how-to-make-phusion-passenger-run-in-development-mode

于 2012-06-19T22:33:35.413 回答