3

我试图弄清楚我是否能够使用delayed_job. 我需要能够在delayed_job perform方法中将作业添加到队列中。这可能吗?

4

2 回答 2

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 ...”。

于 2010-01-25T21:14:46.247 回答
-1

send_later我在调用的方法中调用的简单测试send_later表明NO,它将不起作用。

于 2010-01-25T04:26:52.763 回答