我正在开发我的第一个rails应用程序,我刚刚通过Heroku将其推向生产。我的任务的下一步是在生产环境中创建一个帐户,并让它向该电子邮件发送电子邮件确认。
config/environments/production.rb
config.action_mailer.default_url_options = { host: 'alex-bloccit.herokuapp.com' }
config/initializers/setup_mail.rb
if Rails.env.development?
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
address: 'smtp.sendgrid.net',
port: '587',
authentication: :plain,
user_name: ENV['SENDGRID_USERNAME'],
password: ENV['SENDGRID_PASSWORD'],
domain: 'heroku.com',
enable_starttls_auto: true
}
end
config/initializers/setup_mail.rb
if Rails.env.development? || Rails.env.production?
config/initializers/devise.rb
config.mailer_sender = "alex.colbert1987@gmail.com"代码更新到github并推送到Heroku很好,但当我转到网站并尝试在电子邮件下创建电子邮件时。希望这能为故障排除提供足够的信息。
发布于 2014-12-22 02:24:10
在config/initializers/setup_mail.rb中,您需要在配置ActionMailer之前使用if Rails.env.development?。由于if语句的结构方式,此配置不会在生产环境中运行。
https://stackoverflow.com/questions/27592037
复制相似问题