簡體   English   中英

Rails 4動作管理器不發送電子郵件

[英]Rails 4 actionmailer not sending emails

我已經嘗試了所有我能想到的東西,通過Rails 4.1.6(本地開發)發送電子郵件,但沒有任何工作。 使用Postmark我在development.rb和application.rb中有以下內容:

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  }

我的Mailer類看起來像這樣:

class BusinessMailer < ActionMailer::Base
  default from: "my_email@email.com"

  def claim_business business

    mail(
      :subject => 'hello',
      :to      => 'myemail@email.com',
      :from    => 'myemail@email.com',
      :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在我的控制台中BusinessMailer#claim_business: processed outbound mail in 14.1msBusinessMailer#claim_business: processed outbound mail in 14.1ms ,沒有錯誤消息。 誰能告訴我我在這里缺少什么?

您缺少deliver方法以最終發送電子郵件。 嘗試:

BusinessMailer.claim_business(@business).deliver

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM