小编ros*_*der的帖子

在Rails 5.1.3中为继承的ActionMailer对象设置deliver_later_queue_name

我正在尝试在 Rails 5.1.3 应用程序中为事务邮件处理和批量邮件处理设置单独的邮件程序队列。根据 (配置选项),我应该能够通过设置deliver_later_queue_name.

我有以下课程:

class ApplicationMailer < ActionMailer::Base
end

class UserMailer < ApplicationMailer  self.deliver_later_queue_name = 'mail'
  self.deliver_later_queue_name = 'mail'
  self.smtp_settings = {
    address: "smtp.sendgrid.net",
    port: 587,
    ...
}

class BulkMailer < ApplicationMailer
  self.deliver_later_queue_name = 'bulkmail'
  self.smtp_settings = {
    address: "email-smtp.us-west-2.amazonaws.com",
    port: 587,
    ...
  }
Run Code Online (Sandbox Code Playgroud)

这对于 smtp_settings 来说效果很好,但是它deliver_later_queue_name似乎是一个类变量?因此,当我在BulkMailer或中设置它时UserMailer,它会更改所有 ActionMailer 的设置。

deliver_later_queue_name有谁知道我可以为 BulkMailer 和 UserMailer设置单独的方法吗?

ruby ruby-on-rails ruby-on-rails-5

1
推荐指数
1
解决办法
1226
查看次数

标签 统计

ruby ×1

ruby-on-rails ×1

ruby-on-rails-5 ×1