8

我正在使用 SendGrid 在 Heroku 上发送电子邮件...

到目前为止的问题是,虽然它在 Heroku 上运行良好,但在我的本地主机上却失败了。

现在我在这里安装了 SendGrig,config/setup_mail.rb:

ActionMailer::Base.smtp_settings = {
  :address        => "smtp.sendgrid.net",
  :port           => "25",
  :authentication => :plain,
  :user_name      => ENV['SENDGRID_USERNAME'],
  :password       => ENV['SENDGRID_PASSWORD'],
  :domain         => ENV['SENDGRID_DOMAIN']
}

什么是 Heroku/SendGrid 方法可以让我确保我的邮件在 DEV 中工作。这个 setup_mail.rb 文件是个好东西吗?它应该在env文件中吗?还有其他想法吗?

谢谢

4

2 回答 2

11

使用 config/environments/[development.rb | production.rb] 正如上面提到的 tfe 听起来像是要走的路。只需将 ActionMailer 配置放入这些文件中的任何一个并更改它以适应开发|生产环境。

您还可以通过发出以下命令找到 Heroku 使用的 SendGrid 凭据:

heroku 配置 --long

这些凭据用于所有 SendGrid 身份验证(SMTP 身份验证、网站登录以查看统计信息等、API 访问)

——乔

发送网格

于 2010-10-18T18:48:59.083 回答
4

只需在您的开发环境中为SENDGRID_USERNAMESENDGRID_PASSWORDSENDGRID_DOMAIN. 然后它将起作用。

您可以从 Heroku 应用程序中获取这些值的正确值。打开heroku控制台并获取ENV['SENDGRID_USERNAME']等等的值。

或者只是在本地使用一组不同的 SMTP 设置。或者使用sendmail什么的。

于 2010-10-18T03:18:00.967 回答