我正在试图弄清楚我是否能够使用delayed_job
。我需要能够在delayed_job
perform
方法中将作业添加到队列中。这可能吗?
答案 0 :(得分:2)
根据我的测试,他们可以:
模型Machine
:
class Machine < ActiveRecord::Base
def perform
Delayed::Job.enqueue Secondary.create!
end
end
模型Secondary
:
class Secondary < ActiveRecord::Base
def perform
logger.info("Inside secondary's perform method (WIN)")
Proof.create!
end
end
来自控制台:
延迟:: Job.enqueue Machine.create!
这最终会创建Proof
的实例并记录“Inside secondary's ...”。
答案 1 :(得分:-1)
我在send_later
调用的方法中调用send_later
的简单测试表明 NO ,它不起作用。