Rails crons任务只在生产中运行

时间:2015-05-08 09:13:32

标签: ruby-on-rails ruby ruby-on-rails-4

我在crons.rake中定义了一个任务,但此任务仅在生产模式下运行。如何在开发模式下运行?

task(:generate_mindmails => :environment) do

2 个答案:

答案 0 :(得分:4)

在执行命令之前,只需设置环境:

$ RAILS_ENV=development rake generate_mindmails

答案 1 :(得分:4)

我建议你改用whenever宝石。它可以配置更舒适。像这样:

every 5.hours do
  runner "MyModel.my_method", :environment => :development
end

您可以通过将gem 'whenever'添加到Gemfile然后运行bundle install来安装它。您应该阅读文档或至少阅读github项目的README.md

//您也可以在两种环境中运行它:

every 5.hours do
  runner "MyModel.my_method", :environment => :development
  runner "MyModel.my_method", :environment => :production
end