kna*_*ode 5 delayed-job ruby-on-rails-6
升级到Rails 6之后,我注意到默认邮件发送器的.deliver_later工作方式与Rails 5中的不同。
组态:
config.active_job.queue_adapter = :inline
Run Code Online (Sandbox Code Playgroud)
运行时Mailer.register_email(...).deliver_later-不会存储任何内容ActionMailer::Base.deliveries。如果我运行,此数组将被填充perform_enqueued_jobs-好像queue_adapter = :inline无法按我期望的方式工作。
如果我跑步,Mailer.send(...).deliver_now则ActionMailer::Base.deliveries具有适当的价值。
知道为什么会这样以及如何解决吗?
小智 6
我在测试中遇到了同样的问题。在互联网上搜索一无所获,所以我开始尝试。
我尝试将发送邮件的调用方法包装在
assert_emails 1 do
Mailer.register_email(...).deliver_later
end
Run Code Online (Sandbox Code Playgroud)
之后,ActionMailer::Base.deliveries正确填充。
| 归档时间: |
|
| 查看次数: |
121 次 |
| 最近记录: |