SendGrid不会在默认的inqury /联系表单中发送Heroku上的电子邮件

时间:2011-02-06 22:10:54

标签: ruby-on-rails heroku actionmailer refinerycms sendgrid

这是我第一个使用RefineryCMS的应用程序。我过去从应用程序发送邮件的方式目前不适用于我的炼油厂应用程序。

我已经通过互联网上的大量搜索尝试了很多方法来做到这一点,我无法做到这一点。

目前,这就是我所拥有的:

environment.rb文件中我有这个:

config.action_mailer.smtp_settings = {
    :enable_starttls_auto => true,
    :address        => 'smtp.sendgrid.net',
    :port           => '25',
    :authentication => :plain,
    :user_name      => 'myusername@mydomain.com',
    :password       => 'mypassword',
    :domain         => 'mydomain'
  }

我也尝试过:

ActionMailer::Base.smtp_settings = {
    :enable_starttls_auto => true,
    :address        => 'smtp.sendgrid.net',
    :port           => '25',
    :authentication => :plain,
    :user_name      => 'myusername@mydomain.com',
    :password       => 'mypassword',
    :domain         => 'mydomain'
  }

我已尝试将这些设置放在生产和开发类中。在本地和heroku上尝试但我无法获得内置的查询/联系表单来发送通知电子邮件,我不知道为什么它不起作用。

就像我之前说过的那样,我已经尝试了所有解决方案(它们都非常相似)我可以找到这个,但不能使它工作。如果有人可以告诉我我做错了什么,确切地说,我需要做什么,这将是非常棒的。

提前致谢, 〜麦克

1 个答案:

答案 0 :(得分:6)

实际上,现有版本的refinerycms-inquiries中存在导致邮件无法发送的错误。一旦我更新到0.9.9.9,它按预期工作。如果有人需要知道如何执行此更新:

首先,将此行添加到您的Gem文件中:

gem 'refinerycms-inquiries',    '~> 0.9'

然后运行此命令:

bundle update refinerycms-inquiries

这就是我添加到environment.rb文件中的全部内容:

ActionMailer::Base.smtp_settings = {
    :enable_starttls_auto => true,
    :address        => 'smtp.sendgrid.net',
    :port           => '25',
    :authentication => :plain,
    :user_name      => 'myemail@domain.com',
    :password       => 'mypassword',
    :domain         => 'mydomain.com'
}

就是这样。