当我尝试在heroku雪松堆栈上通过sendgrid发送电子邮件时,我得到了以下错误:
ArgumentError (SMTP-AUTH requested but missing user name):
我在/environments/staging.rb中的设置是:
config.action_mailer.delivery_method = :smtp
config.action_mailer.raise_delivery_errors = true
config.action_mailer.default_url_options = { :host => 'myapp' }
ActionMailer::Base.smtp_settings = {
:address => "smtp.sendgrid.net",
:port => "587",
:authentication => :plain,
:user_name => ENV['SENDGRID_USERNAME'],
:password => ENV['SENDGRID_PASSWORD'],
:domain => 'heroku.com'
}
我的Sendgrid密码/用户名是根据this page从Heroku获取的
有人有什么建议吗?
发布于 2012-07-21 00:20:49
尝试将您的配置从config/enviornments/staging.rb
移动到config/initializers/smtp.rb
。这样,无论您所处的环境如何,您都可以知道ActionMailer是如何配置的。
您应该在环境文件中保留特定于交付的设置:
config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
https://stackoverflow.com/questions/11426202
复制相似问题