[英]Getting Devise authentication to send the email for password retrieval
我正在我的本地主機上測試Rails的Devise身份驗證,並希望讓它發送用於密碼檢索的電子郵件(即“忘記密碼”鏈接)。 密碼檢索內置於Devise中,只需正確配置即可發送電子郵件。
在initializers / devise.rb中,我放了
config.mailer_sender = "i...@mydomain.com"
但是當我嘗試在rails的Devise身份驗證中測試“忘記密碼”鏈接時,我收到了以下錯誤消息。 如果我確實需要為實際發送的電子郵件添加其他信息,我需要添加什么以及在哪里?
在用戶模型中,這些是正在使用的模塊:database_authenticatable,:registerable,:recoverable,:rememberable,:trackable,:validatable
---錯誤消息--- Errno ::在Devise中的ECONNREFUSED :: PasswordsController #create連接被拒絕 - 連接(2)Rails.root:/ Users / myname / Sites / rails3d應用程序跟蹤| 框架跟蹤| 完整跟蹤請求參數:{“utf8”=>“✓”,“authenticity_token”=>“8oO5vXqO4esl3ztn5yE7OkVxZe + Ju94jj76rbKR225I =”,“user”=> {“email”=>“myemail ... @ gmail.com”}, “commit”=>“發送重置密碼說明”}顯示會話轉儲顯示env轉儲響應標頭
除了上面提到的TJ之外,我還建議您查看MailCatcher gem以便在本地測試電子郵件。 我已經使用它幾天了,效果很好。
此外,如果您希望發送電子郵件而不僅僅是記錄,請確保並在您的development.rb文件中啟用傳遞:
config.action_mailer.perform_deliveries = true
您是否在environment / development.rb中設置了郵件設置
config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:domain => 'domain.com',
:user_name => 'email_address@domain.com',
:password => 'password',
:authentication => :plain,
:enable_starttls_auto => true }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.