如何在rails上运行rufus-scheduler?

时间:2014-02-15 23:14:51

标签: ruby-on-rails ruby cron

我正在尝试在rails上使用rufus-scheduler gem来设置一些任务(每小时发送一封邮件)。我安装了gem并使用:

创建了一个config/initializer/task_scheduler.rb
require 'rubygems'
require 'rufus/scheduler'  
scheduler = Rufus::Scheduler.start_new
scheduler.every("1h") do
    Rule.all.each do |r|
        RuleMailer.report_email(r).deliver
    end
end

但我无法理解下一步是什么。这将如何运行?我应该设置一个cron吗?这是由网络服务器运行的? rails s,或rake task,或者是什么。

我没有得到它,我无法找到这些信息。

1 个答案:

答案 0 :(得分:0)

将使用every运行。

  

Rufus-scheduler支持五种作业。 in,at,every,interval   和cron的工作。

https://github.com/jmettraux/rufus-scheduler上,它以各种方块显示各种用途的示例。如果你想使用cron,它看起来更像是scheduler.cron '00 09 * * *' do(直接来自例子,没有设置为你的间隔)。