我正在开发一个使用resque和resque调度器的rails应用程序以安排电子邮件发送。
有没有一种方法可以获得所有计划作业的列表,或者更好的方法是获得具有特定参数的作业列表?
我尝试过一些类似Resque.schedule
的东西,但我能得到的最好的是这个散列:
{"send_email"=>
{
"class"=>"EmailSendingJob",
"args"=>nil,
"queue"=>"email_queue",
"description"=>"Runs the perform method in EmailSendingJob"
}
}
我实际上需要一个所有延迟作业的列表,这些作业是一次性作业,将在未来的某个时间放入队列,而计划的作业是定期重复的。
find_delayed_selection
方法正是我所需要的,它允许查找具有匹配特定条件的参数的延迟作业。这种方法在当前稳定版本的resque scheduler 4.0.0中不可用,所以我最终使用了master分支。
这是添加该方法的pull请求的链接https://github.com/resque/resque-scheduler/pull/452