获取使用 resque-scheduler 安排的 Resque 作业

jov*_*ana 6 ruby-on-rails resque resque-scheduler

我正在开发一个使用resqueresque-scheduler 来安排电子邮件发送的 rails 应用程序。

有没有办法获得所有预定作业的列表,或者更好的具有特定参数的作业列表?

我已经尝试了一些事情,Resque.schedule但我能得到的最好的是这个哈希:

{"send_email"=>
  {
    "class"=>"EmailSendingJob",
    "args"=>nil,
    "queue"=>"email_queue",
    "description"=>"Runs the perform method in EmailSendingJob"
  }
}
Run Code Online (Sandbox Code Playgroud)

jov*_*ana 5

我实际上需要一份所有延迟作业的列表,这些作业是将在未来某个时间放入队列的一次性作业,而预定作业则定期重复出现。

find_delayed_selection方法正是我所需要的,它允许查找具有匹配某些标准的参数的延迟作业。这个方法在 resque-scheduler 4.0.0 的当前稳定版本中是不可用的,所以我最终使用了 master 分支。

这是添加方法的拉取请求的链接https://github.com/resque/resque-scheduler/pull/452