如何在after_save回调中使用Delayed :: Job?

时间:2010-06-21 04:31:29

标签: ruby-on-rails callback delayed-job

我想使用process_images异步after_save运行方法Delayed::Job。但是,当我尝试:

after_save lambda { send_later(:process_images) }

我得到NoMethodError: You have a nil object when you didn't expect it!。 (self.send_later(:process_images)也可以工作)

1 个答案:

答案 0 :(得分:5)

这可能有用......我记得在转换为Delayed :: Job.enqueue之前暂时使用它:

after_save do |image|
  image.send_later(:process_images)
end

您也可以尝试:

after_save :cue_process_images

def cue_process_images
  send_later(:process_images)
end

我目前正在使用类似于后者的东西,使用回形针,它工作正常。