指定"来自"从Rails应用程序发送邮件时的电子邮件地址

时间:2013-07-08 02:22:28

标签: ruby-on-rails ruby-on-rails-3

我正在使用Gmail来管理我的rails app域的电子邮件。

Google帐户就是account_owner@gmail.com

但是,“来自”电子邮件地址应该是,例如info@mysite.com

当我按如下方式配置smtp_settings时,会发送电子邮件,但“发件人”电子邮件地址为account_owner@gmail.com。我希望它是info@mysite.com,但如果我将:user_name更改为info@mysite.com及其密码,我的应用程序似乎会发送电子邮件,但它从未收到过。我怎样才能做到这一点?

ActionMailer::Base.smtp_settings = {
  :address              => "smtp.gmail.com",
  :port                 => 587,
  :domain               => "gmail.com",
  :user_name            => "account_owner@gmail.com",
  :password             => "thepassword",
  :authentication       => "plain",
  :enable_starttls_auto => true
}

2 个答案:

答案 0 :(得分:0)

通过Gmail发送邮件时,您无法更改“发件人”地址。 (除非您将该帐户配置为具有其他“发送为”地址,否则我从未测试过它)

我建议为您的域尝试免费托管Gmail,或使用像Mandrill.com这样的第三方服务

答案 1 :(得分:0)

您不应在:user_name中将其指定为smtp_settings。相反,您应该像这样设置:from选项:

ActionMailer::Base.default :from => 'info@mysite.com'

或者,您可以在发送电子邮件时设置发件人地址:

mail(:to => 'info@theirsite.com', :from => 'info@mysite.com' :subject => '...')