Rails 3.0,ActionMailer交付不起作用,没有显示错误信息

时间:2012-03-25 18:32:57

标签: ruby-on-rails configuration actionmailer

我想在开发环境中使用从Rails发送邮件。我的消息正在呈现(我可以在终端中看到它正在运行rails console)。

config/development.rb我有(是的,端口真的是26):

config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
ActionMailer::Base.smtp_settings = {
  :address  => "mail.mydomain.com",
  :port  => 26,
  :user_name  => "me@mydomain.com",
  :password  => "removed",
  :authentication  => :login
}

我在mailers/user_mailer

class UserMailer < ActionMailer::Base
  default from: "me@mydomain.com"
  def send_an_email
    mail(:to => "me@gmail.com", :subject => "Test from Rails")
  end
end

我有一个视图,可以在views/user_mailer/send_an_email.text.erb中正确呈现。我在页面请求时调用UserMailer.send_an_email.deliver

Rails不会抱怨我的配置。我在rails server控制台输出中看到了该消息。但是,我从来没有收到过电子邮件,我在控制台输出中看不到任何错误消息(正如您在上面看到的那样,raise_delivery_errors = true!。

1 个答案:

答案 0 :(得分:6)

史蒂夫,你有没有确定要调用交付方式?

mail(:to => "me@gmail.com", :subject => "Test from Rails").deliver

我忘了那样做,并且因为没有错误而感到很困惑。 :)

相关问题