2016-08-03 47 views
0

本人曾經試圖得到一個簡單的Rails應用5發送一封電子郵件花了大量的時間和研究(閱讀相關的帖子在堆棧溢出)沒有收到。我已經研究並遵循這裏找到的信息:Ruby on Rails Guides Action Mailer Basics導軌5的ActionMailer發送郵件,但在收件箱

我想知道是否有可能是從導向缺少一些重要的東西。有人會介意按照指南創建一個簡單的應用程序,並告訴我它是否有效?

這裏是以下中的GitHub https://github.com/allenroulston/testmailer滑軌指南(如上所示鏈接)我創建的代碼。當我測試時,我正在使用實際的用戶名和密碼。看起來它應該工作,根據日誌,但沒有工作。對你起作用嗎?

回答

0

您的應用程序/配置/環境/ development.rb

config.action_mailer.delivery_method = :smtp 
config.action_mailer.default_url_options = { :host => 'localhost:3000' } 
config.action_mailer.smtp_settings = { 
    address:    'smtp.gmail.com', 
    port:     587, 
    domain:    'example.com', 
    user_name:   '[email protected]', 
    password:    'YourGmailPassword', 
    authentication:  'plain', 
    enable_starttls_auto: true 
} 
config.file_watcher = ActiveSupport::EventedFileUpdateChecker 
config.exceptions_app = self.routes 

在user_mailer.rb

class UserMailer < ApplicationMailer 
default from: '[email protected]' 

def welcome_email(user) 
    @user = user 
    @url = 'http://www.example.com' 
    mail(to: @user.email, subject: 'Welcome to Example.com') 
end 
end 

這工作完全

+0

當我按照[使用Rails發送電子郵件](http://www.tutorialspoint.com/ruby-on-rails/rails-send-email.htm) 中顯示的說明操作時,我遇到錯誤從命令行執行以下操作: ** rails生成郵件程序Usermailer ** Macintosh:mailtest allenroulston $ rails生成郵件程序Usermailer /Users/allenroulston/.rvm/gems/[email protected]/gems/actionmailer -5.0.0/lib目錄/ action_mailer/base.rb:565:在'method_missing的:對的ActionMailer :: Base的 '未定義的方法'DEFAULT_CONTENT_TYPE =': 類你是什麼意思? default_static_extension =(NoMethodError) –

+0

在你的問題中發佈你的錯誤。屏幕截圖 –

+0

提供GitHub的鏈接 –

0

我相信原因我遇到的挑戰是什麼? y應用程序發送電子郵件是由於初始配置不正確,如果正確糾正,沒有導致應用程序發送電子郵件,因爲我沒有停止並重新啓動rails服務器。大多數情況下,沒有必要停止並重新啓動rails服務器,以查看代碼中的更改生效。很明顯,在將配置更改連接到ActionMailer時有必要。

相關問題