Mandrill + Rails不通过控制器发送,而是通过控制台发送

时间:2014-08-15 05:02:54

标签: ruby-on-rails email ruby-on-rails-4 actionmailer mandrill

嗨,我有一个非常奇怪的问题。我根据文档设置了mandrill,我现在无法通过我的控制器发送邮件。甚至设计邮件似乎都不会......但我可以通过控制台发送它!

我的邮件配置

  config.action_mailer.default_url_options = { :host => 'smtp.mandrillapp.com' }
  config.action_mailer.perform_deliveries = true
  config.action_mailer.delivery_method = :smtp
  config.action_mailer.smtp_settings = {
    :address   => "smtp.mandrillapp.com",
    :port      => 587,
    :enable_starttls_auto => true,
    :user_name => ENV["MANDRILL_USERNAME"],
    :password  => ENV["MANDRILL_APIKEY"],
    :authentication => 'plain',
    :domain => 'yim.mydomain.org',
  }

我的邮件程序

class YimMailer < ActionMailer::Base
  default from: "notifier@yim.mydomain.org"

  def welcome_email(user, data)
    @user = user
    @data = data
    mail(to: @user.email, subject: 'Welcome!')
  end
end

在我的控制器中:

YimMailer.welcome_email(current_user, dummydata).deliver

当我通过控制台执行同一行时,它会提供。可能是什么问题?

我正在使用rails 4

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题并重新启动了服务器(意外),它也开始通过控制器工作了!