2

我正在尝试在 Rails 中使用Action Mailer向用户发送电子邮件。

def create
  ...
  if @post.save
    UserMailer.archive_confirmation(@site).deliver
  end
end

但是当我尝试它时,我没有收到任何电子邮件,并且我不知道如何调试(由于该create方法成功运行,并且其他一切都按预期进行,因此没有错误消息)哪里可能ActionMailer出错?

4

3 回答 3

2

检查您的 RAILS 日志,APP_ROOT/log/development.logAPP_ROOT/log/production.log.

于 2012-10-20T02:39:52.567 回答
0

如果我正在编写代码以在控制器中发送电子邮件,我可以像这样编写来处理我的应用程序中的救援,并且我可以显示救援中出现的错误消息,我们可以显示。我在控制器中使用这样的东西:

if @user.save
  begin
  UserMailer.welcome_email(@user).deliver
  flash[:success] = "#{@user.name} created"
  rescue Net::SMTPAuthenticationError, Net::SMTPServerBusy, Net::SMTPSyntaxError, Net::SMTPFatalError, Net::SMTPUnknownError => e
  flash[:notice]=e.message   
  end
  redirect_to home_index_path
end
于 2017-09-05T13:18:26.490 回答
0

在您各自的环境文件中:

  ## config/environments/development.rb
  config.action_mailer.raise_delivery_errors = true
于 2021-04-21T10:56:45.183 回答