【发布时间】:2019-09-08 15:52:42
【问题描述】:
我正在尝试在我的 Web 应用程序中注册时向用户发送一封电子邮件,该应用程序是在后端使用 Rails 构建的,在前端使用 React-Redux 构建的。在本地服务器上进行测试时,我使用了一个名为 letter_opener 的 gem,一切似乎都运行良好。当我在 Heroku 上进行现场测试时,我得到了 500 错误,我不确定出了什么问题。
我尝试阅读 ActionMailer 文档,但似乎没有提到任何此类问题。
UserMailer中的方法:
def welcome_email(user)
@user = user
mail(to: @user.email, subject: "Welcome")
end
UsersController中的相关代码:
def create
# ...
email = UserMailer.welcome_email(@user)
email.deliver_now # This line throws the error
# ...
end
Heroku 日志中的错误:
Errno::ECONNREFUSED (Connection refused - connect(2) for "localhost" port 25):
我希望电子邮件能够送达,或者至少会有更多信息性的错误消息。我不确定为什么 Rails 会查看 localhost 的 25 端口。
【问题讨论】:
标签: ruby-on-rails heroku