我試過所有我能想到的用Rails 4.1.6(本地開發)發送電子郵件,但沒有任何工作。使用郵戳我已經在我的development.rb和application.rb中如下:Rails 4 actionmailer不發送電子郵件
config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }
config.action_mailer.delivery_method = :postmark
config.action_mailer.postmark_settings = { :api_key => API_KEY }
config.action_mailer.perform_deliveries = true
和GMAIL我想:
config.action_mailer.default_url_options = { host: 'localhost', port: 3000 }
config.action_mailer.perform_deliveries = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'smtp.gmail.com',
port: 587,
domain: 'gmail.com',
user_name: 'my_email',
password: 'my_password',
authentication: 'plain',
enable_starttls_auto: true }
我梅勒類看起來像這樣:
class BusinessMailer < ActionMailer::Base
default from: "[email protected]"
def claim_business business
mail(
:subject => 'hello',
:to => '[email protected]',
:from => '[email protected]',
:html_body => '<strong>Hello John Doe<strong>',
:track_opens => 'true'
)
end
end
最後,我通過以下方式發送電子郵件:BusinessMailer.claim_business @business
當我觸發claim_business
方法我在控制檯中看到BusinessMailer#claim_business: processed outbound mail in 14.1ms
,沒有錯誤消息。誰能告訴我我在這裏失蹤了什麼?
添加'config.action_mailer.raise_delivery_errors = true',看看會發生什麼。 – blelump 2014-11-04 15:12:21
@blelump我有,並沒有得到任何額外的輸出到控制檯,只是標準的'處理出站郵件' – 2014-11-04 15:15:32
好吧,那麼:'BusinessMailer.claim_business(@business).deliver'? – blelump 2014-11-04 15:16:32