4

我想在生产中的 Rails 3 上运行一些雷神任务,但我不知道如何设置它。以下代码不起作用

class CheckData < Thor
  require File.expand_path('config/environment.rb')
end
4

1 回答 1

6

require将 RAILS_ENV 环境变量设置为语句上方的“生产”应该可以工作。如果未提前设置环境变量,我在这里使用条件赋值将环境默认为“生产”。

class CheckData < Thor
  ENV['RAILS_ENV'] ||= 'production'
  require File.expand_path('config/environment.rb')
end

如果您从命令行将其作为 Thor 任务运行,则可以在运行之前设置环境变量,从而覆盖默认分配:

export RAILS_ENV=test; thor check_data

有关更多环境变量,请参阅从RailsGuides配置 Rails 应用程序Rails 环境设置。

于 2011-02-08T13:54:02.443 回答