2011-12-06 46 views
6

我正在測試爲我的本地主機上的Rails設計身份驗證,並希望讓它發送密碼檢索郵件(即「忘記了您的密碼」鏈接)。密碼檢索內置於Devise中,只需將其正確配置以獲取電子郵件發送即可。獲取設計認證以發送電子郵件以獲取密碼

在初始化/ devise.rb,我把

config.mailer_sender = "[email protected]" 

但是當我試圖測試的「忘記密碼」的設計驗證鏈接,軌道我得到下面的錯誤消息。如果我確實需要添加電子郵件的其他信息以實際發送,我需要添加什麼以及在哪裏?

在用戶模型中,這些是正在使用 色器件的模塊:database_authenticatable,:可登記的, :可恢復的,:rememberable,:可追蹤,:可驗證

---錯誤消息--- errno的:: ECONNREFUSED in Devise :: PasswordsController#create Connection refused - connect(2) Rails.root:/ Users/myname/Sites/rails3d Application Trace |框架跟蹤|全面跟蹤 請求 參數: { 「UTF-8」=> 「✓」, 「authenticity_token」=> 「8oO5vXqO4esl3ztn5yE7OkVxZe + Ju94jj76rbKR225I =」, 「用戶」=> { 「電子郵件」=>「myemail ... @ gmail的.COM「}, ‘提交’=>」給我發送重置密碼的說明「} 顯示會話轉儲 顯示ENV轉儲 響應 頭

+0

我在同一個地方結束了。這個功能真的很差。 – Arel

回答

3

你設置的環境中您的郵件設置/ development.rb

config.action_mailer.smtp_settings = { 
    :address    => "smtp.gmail.com", 
    :port     => 587, 
    :domain    => 'domain.com', 
    :user_name   => '[email protected]', 
    :password    => 'password', 
    :authentication  => :plain, 
    :enable_starttls_auto => true } 
+0

其他人都說域是郵件服務器的域而不是網域。 ? – nathanengineer

3

除了TJ說的東西以上,我建議您查看MailCatcher gem以在本地測試電子郵件。我幾天以來一直在使用它,它工作得很好。

mailcatcher.me

此外,如果你想發送的電子郵件,而不只是記錄確認並啓用您的development.rb的文件傳送,以及:

config.action_mailer.perform_deliveries = true 
相關問題