我正在使用rails (3.0.4)
和rspec-rails (2.5.0). When I run
rails生成包含此行的rspec:install
it produces
spec_helper.rb`:
ENV["RAILS_ENV"] ||= 'test'
当我运行rake spec
时,我在终端上收到此警告:
DEPRECATION WARNING: RAILS_ENV is deprecated. Please use ::Rails.env.
这并不令人讨厌,因为它只在我的Spork.prefork
内运行一次,但如果可能的话,我想过去弃用。我是Rails的新手,并没有在rspec-rails issues或其他任何地方找到这一点。
答案 0 :(得分:7)
在GitHub issue中重复我的回复:
该警告告诉您不推荐使用常量RAILS_ENV
,而不是环境变量ENV["RAILS_ENV"]
。如果您克隆Rails repo并查看v3.0.4标记并搜索RAILS_ENV
,您会看到Rails本身在多个地方使用ENV["RAILS_ENV"]
。
必须来自您应用中的其他位置。
答案 1 :(得分:2)
必须是Rails 3.0.4中的新功能。这应该有效:
从spec / spec_helper.rb
中删除ENV["RAILS_ENV"] || = 'test'
查找require rspec/rails
行。
在其后立即添加::Rails.env ||= 'test'
。
在rspec-rails跟踪器上打开一个问题是个好主意,因为这需要更改。