由于
某种原因,我在尝试使用ActiveJob::Exceptions retry_on
方法时收到错误。文档显示了此用法:
class RemoteServiceJob < ActiveJob::Base
retry_on CustomAppException # defaults to 3s wait, 5 attempts
...
...
...
end
但是当我这样做时,我收到一个未定义的方法错误:
"未定义的方法'retry_on'...(NoMethodError(">
我的代码与上述完全相同,只是我正在重试不同的错误。我尝试执行此操作的类是从继承自ActiveJob::Base
的BaseJob
类继承的作业。
有谁知道为什么我会得到这个结果?如果我扩展ActiveJob::Base
,为什么不定义该方法?
因为retry_on被添加到Rails 5.1中。它在 5.1 之前不可用。正如你所说,你使用的是Rails 4,所以例外是合法的。