gpt4 book ai didi

ruby-on-rails - 如何查询delay_job处理程序

转载 作者:行者123 更新时间:2023-12-03 13:57:38 25 4
gpt4 key购买 nike

我正在使用delay_job进行游戏,我需要删除具有指定处理程序值的所有作业,我以此方式尝试过

class Auction < ActiveRecord::Base
def clean_jobs
Delayed::Job.all.each do |job|
job.delete if job.payload_object.auction_id == id
end
end
end


它可以工作,但是我必须遍历整个队列……不酷。我该如何解决?
谢谢

最佳答案

您正在使用payload_object,这是一个YAML文本。

可能这段代码做同样的事情。

Delayed::Job.where("handler LIKE '%auction_id: #{id}%'").delete_all


对于双重检查:

Delayed::Job.where("handler LIKE '%auction_id: #{id}%'").each do |job|
job.delete if job.payload_object.auction_id == id
end

关于ruby-on-rails - 如何查询delay_job处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9589630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com