【发布时间】:2017-02-03 17:11:35
【问题描述】:
有什么方法可以确保某些代码在delayed job 失败或成功后运行事件,就像我们可以在异常处理中编写ensure 块一样?
【问题讨论】:
-
您在使用作业吗?或者你像
user.delay.send_email一样使用它? -
@LolWalid 是的,我正在使用
.delay调用您指定的作业方法。user.delay.send_email -
你看到我的回答了吗?为什么不将
user.delay.send_email放入它自己的方法并在那里使用ensure? -
实际不,你不能这样做,你必须定义一个调用 send_email 的作业。或者编写一个方法,确保在发送电子邮件后执行操作并延迟此方法。
标签: ruby ruby-on-rails-3 delayed-job