2014-01-09 78 views
0

我遇到了一个问题,无论我在哪种环境下运行Rails,它总是会投入生产。例如:Rails总是使用生产环境

$ rails c development 
Loading production environment (Rails 3.2.16) 
1.9.3p484 :001 > 

$ RAILS_ENV=development rails console 
Loading production environment (Rails 3.2.16) 
1.9.3p484 :001 > 

我第一次注意到这一点,当我运行Rails服务器并将其写入生产数据库,而不是发展。如果我运行“rails s -e development”,它表示它在开发中启动,但仍使用生产数据库。

这是我到config/environment.rb

# Load the rails application 
require File.expand_path('../application', __FILE__) 

# Initialize the rails application 
Skeletor::Application.initialize! 

我试图通过项目grepping,看是否是被设置RAILS_ENV任何地方,但我没有看到它。

+0

你的database.yml文件是什么样的? – ChrisBarthol

+0

在bash/zsh/etc中运行'env'的输出是什么? –

+0

Rails.env在控制台中的价值 – junil

回答

0

在初始化我做了“如果Rails.env =‘生产’”,而不是“如果Rails.env ==‘生产’”,这是造成问题的原因。感谢大家的建议,我知道它必须是愚蠢的东西。

+0

http://en.wikipedia.org/wiki/Yoda_conditions:D –

0

尝试运行:

RAILS_ENV=development bundle exec rails s