rails 3:我的应用程序如何从多个电子邮件帐户发送?

jpw*_*ynn 2 ruby-on-rails actionmailer

在我的environment.rb文件中,我有:

ActionMailer::Base.smtp_settings = {
  :address => "smtp.example_host.com",
  :port => '25',
  :domain => "example_send_from.com",
  :authentication => :plain,
  :user_name => "send_account_name",
  :password => ENV['MY_EMAIL_SEND_PWD']
}
Run Code Online (Sandbox Code Playgroud)

它工作正常.

但是,现在我的应用程序有一类新的电子邮件需要通过不同的电子邮件帐户发送...在某些小批量案例中可能是gmail,在其他大批量案例中可能是sendgrid.

我确信这很简单 - 但是如何Base.smtp_settings在逐个电子邮件的基础上覆盖默认设置?

Mar*_*sen 5

您是否为每个电子邮件帐户都有单独的动作制作者?然后你可以设置每个动作邮件程序类的smtp设置:

class Mailer1 < ....
  self.smtp_settings = { .... }
end
Run Code Online (Sandbox Code Playgroud)

等等