未定义的方法“异步”(suckerpunch gem)
undefined method `async' (suckerpunch gem)
我在 background.It 中使用 sucker_punch gem 在我的 rails 应用程序中发送电子邮件曾经工作正常,但后来我突然收到此错误:
undefined method `async' for #<ActiveJob::QueueAdapters::SuckerPunchAdapter::JobWrapper:0x007f892c6c31a0>
下面是完整错误的截图:
我现在正在使用 sucker_punch 版本 2.0.1。我尝试将其降级并改用 sucker_punch 版本 1.6.0,但错误仍然存在。
有什么帮助吗?谢谢!
好吧,我终于明白了。在我的 sucker_punch.rb
文件中,我需要包含以下内容:
# config/initializers/sucker_punch.rb
require 'sucker_punch/async_syntax'
如 here
所述,使用 Rails < 5.0.0 的 Sucker Punch 版本 2.0.0+ 的用户需要这样做
他们实际上已经改变了异步语法。
使用较新版本的 sucker_punch,您应该像这样调用异步:
Model.perform_async
它在此处的向后兼容性标题下提到
https://github.com/brandonhilkert/sucker_punch
我在 background.It 中使用 sucker_punch gem 在我的 rails 应用程序中发送电子邮件曾经工作正常,但后来我突然收到此错误:
undefined method `async' for #<ActiveJob::QueueAdapters::SuckerPunchAdapter::JobWrapper:0x007f892c6c31a0>
下面是完整错误的截图:
我现在正在使用 sucker_punch 版本 2.0.1。我尝试将其降级并改用 sucker_punch 版本 1.6.0,但错误仍然存在。
有什么帮助吗?谢谢!
好吧,我终于明白了。在我的 sucker_punch.rb
文件中,我需要包含以下内容:
# config/initializers/sucker_punch.rb
require 'sucker_punch/async_syntax'
如 here
所述,使用 Rails < 5.0.0 的 Sucker Punch 版本 2.0.0+ 的用户需要这样做他们实际上已经改变了异步语法。
使用较新版本的 sucker_punch,您应该像这样调用异步:
Model.perform_async
它在此处的向后兼容性标题下提到 https://github.com/brandonhilkert/sucker_punch