【问题标题】:Ruby on Rails, Send a copy of all outgoing emailsRuby on Rails,发送所有外发电子邮件的副本
【发布时间】:2016-07-04 01:53:33
【问题描述】:

我想保存从 RoR 发送的每封电子邮件的副本。 有没有办法让 ActionMailer 将每封电子邮件的副本发送到特定地址(可能是密件抄送)

背景:我一直在使用 Mandrillapp 从他们的设置页面自动使用“将每封电子邮件的副本发送到此地址”来执行此操作。我是 现在从 Mandrill 转移到 Amazon SES,并希望继续 使用类似的功能。

【问题讨论】:

  • 所以你想抄送给特定的人?
  • 是的,我正在考虑抄送特定的人,但不修改邮件调用(我有很多),有没有办法为每个邮件调用默认指定抄送?
  • 不相关:我建议使用mailgun。从那里你可以对你的邮件做任何你想做的事情。

标签: ruby-on-rails email actionmailer mandrill amazon-ses


【解决方案1】:

你应该可以在邮件方法上设置bcchttp://api.rubyonrails.org/classes/ActionMailer/Base.html

您也可以简单地通过另一个mail() 呼叫发送相同电子邮件内容的副本。

【讨论】:

  • 我使用 ::default 类方法在 UserMailer 类声明之后设置默认密件抄送:默认密件抄送:'email_logger@test.lindsaar.net' 谢谢
【解决方案2】:

你应该试试这个 -

mail(to: "a@mail.com", subject: "Test",
     bcc: "b@mail.com",
     cc: "c@mail.com")

【讨论】:

  • 不相关:我建议使用mailgun。从那里你可以对你的邮件做任何你想做的事情。
【解决方案3】:

你可以使用观察者:

class EmailDeliveryObserver
  def self.delivered_email(message)
    EmailDelivery.log(message)
  end
end
Rails.application.configure do
  config.action_mailer.observers = %w[EmailDeliveryObserver]
end

发件人:https://guides.rubyonrails.org/action_mailer_basics.html#observing-emails

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-08
    • 2015-06-15
    • 1970-01-01
    • 2012-08-29
    • 2012-05-04
    • 2023-03-28
    • 2014-12-05
    • 2016-12-18
    相关资源
    最近更新 更多