我的网站托管在 Heroku 上,我安装了 Sendgrid 附加组件,因为它看起来好得令人难以置信 - 但到目前为止,没有任何电子邮件功能正常工作。我已经阅读了文档,它清楚地说只需添加附加组件 - 是否需要更多配置才能使 Devise 工作?
当我选择"向我发送新密码"时,我得到一个404页面,这让我认为还有更多。就像 Sendgrid 如何知道/在哪里使用预安装的设计模板一样?
感谢。
我今天早上刚刚设置了Devise和SendGrid,没有任何问题。我将恢复我采取的步骤。
首先,安装 Devise 和 SendGrid。恭喜,你已经完成了;)
然后,对于生产环境,将其添加到您的文件中:
config/initializers/devise.rb
:
config.mailer_sender = "mail-to-send@from.com"
<小时 />设置 Rails ActionMailer 以使用 SendGrid
config/environments/production.rb
config.action_mailer.default_url_options = { :host => 'your.websitedomain.com' }
ActionMailer::Base.smtp_settings = {
:user_name => ENV['SENDGRID_USERNAME'],
:password => ENV['SENDGRID_PASSWORD'],
:address => "smtp.sendgrid.net",
:port => 587,
:enable_starttls_auto => true,
:authentication => :plain,
:domain => "yourdomain.com"
}
一切都很好。注册确认,密码恢复...
此外,您应该使用日志记录扩展(它是免费的!)并使用heroku logs --tail
检查您的日志(实时)。如果仍然收到错误,请发布日志。
祝你今天开心!
我已经使用了 sendgrid 附加组件,它真的应该可以工作。就像你说的,即使是文档也是这么说的:
使用ActionMailer的Rails应用程序将正常工作,安装附加组件后无需设置。
所以,这让我觉得还有其他事情正在发生。您是否尝试过使用 heroku logs
命令查看应用程序是否记录任何错误?