2012-05-08 62 views
0

這是/config/initializers/setup_mail.rb我的配置文件:Actionmailer - 我如何設置「from」部分?

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: "[email protected]" 

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

    mail(:from => "[email protected]", :to => user.email, :subject => "New passwordt") 
    end 
end 

發送郵件是工作,我的問題是,在電子郵件的場始終是my_user_name而不是[email protected]

問題在哪裏?爲什麼仍然使用我的Gmail名稱?

回答

1

GMail將只允許您從您的帳戶或其他正確配置的電子郵件地址發送電子郵件。要從其他電子郵件地址發送郵件,您需要將其添加到Gmail設置中。您只能添加您已經可以接收的地址。

+0

對不起老兄我剛剛在第一次見到你的時候給出了同樣的解釋, – dennis

0

當您連接到gmail的smtp服務器(如在您的配置中)時,authentication_information已被分配,因爲您將使用具有已知電子郵件地址的特定user_id發送電子郵件。因此谷歌不會接受任何:from =>「value」,但它將適用於:from參數與auth_info返回的電子郵件。

希望這對你有所幫助

相關問題