gpt4 book ai didi

ruby-on-rails - Sidekiq 3.4.2 和 Rails 4.2.0 有 'undefined method perform_at' 错误

转载 作者:太空宇宙 更新时间:2023-11-03 17:06:55 30 4
gpt4 key购买 nike

我有前任的工作课

class TempJob < ActiveJob::Base
queue_as :default # To Do Design Queue

around_perform do |job, block|
puts "Before Perform'

block.call

puts "After Perform"
end

def perform(*args)
puts "Job Start"
end
end

我正在尝试安排作业在 1 小时后执行

TempJob.perform_at(1.hour.from_now)

但它给了我以下错误

NoMethodError: undefined method `perform_at' for TempJob:Class

使用 Rails 4.2.0、Ruby 2.2.0 和 Sidekiq 3.4.2。

最佳答案

perform_at是Sidekiq提供的方法名,不是ActiveJob。如果你想使用 ActiveJob 安排一个作业在相对时间运行,你应该使用 ActiveJob's set像这样的方法:

TempJob.set(wait: 1.hour).perform_later

另请查看 ActiveJob basics guide .

关于ruby-on-rails - Sidekiq 3.4.2 和 Rails 4.2.0 有 'undefined method perform_at' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32015710/

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