给定一个 Mailer
Rails 3 中的实例,有没有办法覆盖 delivery_method
在上面?
我想通过高优先级传输发送某些电子邮件,而其他人使用更繁忙、低优先级的方法。
我可以在运行时调整配置并再次将其更改回来,但这充满了潜在的副作用。
最佳答案
事实证明,这样做只会影响这个特定的邮件程序,而不会改变 ActionMailer::Base
全局。
class SomeMailer < ActionMailer::Base
self.delivery_method = :high_priority
def some_email(params)
end
end
您也可以这样做(警告:将影响
AnotherMailer
的所有实例),如果您预先拥有实例:mail = AnotherMailer.whatever_email
mail.delivery_handler.delivery_method = :something_else
这些似乎没有记录在案,但有效。
关于ruby-on-rails - 将不同的 delivery_method 与 ActionMailer 一起用于单个电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7214087/