尝试使用ActiveJob :: Exceptions retry_on方法时出现“ NoMethodError”错误

时间:2019-07-15 16:51:09

标签: ruby-on-rails rails-activejob

由于某种原因,当我尝试使用ActiveJob :: Exceptions retry_on方法时出现错误。文档显示了这种用法:

class RemoteServiceJob < ActiveJob::Base
  retry_on CustomAppException # defaults to 3s wait, 5 attempts

  ...
  ...
  ...
end

但是当我这样做时,我得到了一个未定义的方法错误:

  

“未定义的方法`retry_on'...(NoMethodError)”

我的代码与上面的代码完全一样,只是我正在尝试其他错误。我尝试执行此操作的类是从BaseJob继承的ActiveJob::Base类继承的工作。

有人知道我为什么会得到这个结果吗?如果我扩展ActiveJob::Base,为什么不定义该方法?

1 个答案:

答案 0 :(得分:2)

因为retry_on已添加到Rails 5.1。在5.1之前不可用。如您所说,您正在使用Rails 4,因此该异常是合法的。