0

这是我的配置文件/config/initializers/setup_mail.rb

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

这是Mailer's我使用的方法类:

class Notifierpass < ActionMailer::Base
  default from: "no-reply@my-domain.com"

  def forgot_password(user)    
    @reset_password_link = reset_password_url(user.perishable_token)

    mail(:from => "no-reply@my-domain.com", :to => user.email, :subject => "New passwordt")  
  end
end

发送电子邮件正在工作,我的问题是,在电子邮件的字段From始终是my_user_name而不是no-reply@my-domain.com

哪里有问题?为什么仍然使用我的 gmail 名称?

4

2 回答 2

1

GMail 只允许您从您的帐户或您正确配置的其他电子邮件地址发送电子邮件。要从备用电子邮件地址发送,您需要将其添加到 Gmail 设置中。您只能添加您已经可以从中接收的地址。

于 2012-05-08T14:21:26.653 回答
0

当您连接到 gmail 的 smtp 服务器(如在您的配置中)时,已经分配了 authentication_information,因为您将使用具有已知电子邮件地址的某个 user_id 发送电子邮件。因此 google 将不接受任何 :from => "value" 但它将适合 :from 参数与 auth_info 返回的电子邮件。

希望这对你有帮助

于 2012-05-08T15:07:56.453 回答