ActionMailer, ссылка на хост, проваленные рельсы 3.1 и героку

Я включаю ссылки в мои электронные письма, отправленные из моего приложения heroku. Я следовал за RailM-пакетом ActionMailer и у меня все работало нормально, но при использовании heroku / sendgrid ссылки отправляются без хоста. Например, вместо Geoff Dalgas ссылки просто Geoff Dalgas

Вот мой setup_mail.rb в инициализаторах:

require 'development_mail_interceptor'

if Rails.env.production?
  ActionMailer::Base.smtp_settings = {
  :address        => 'smtp.sendgrid.net',
  :port           => '587',
  :authentication => :plain,
  :user_name      => 'XXX',
  :password       => 'XXX',
  :domain         => 'heroku.com'
}
else
ActionMailer::Base.smtp_settings = {
  :address              => "smtp.gmail.com",
  :port                 => 587,
  :domain               => "reelify.com",
  :user_name            => "XXX",
  :password             => "XXX",
  :authentication       => "plain",
  :enable_starttls_auto => true
}
end

ActionMailer::Base.default_url_options[:host] = "reelify.com"


ActionMailer::Base.register_interceptor(DevelopmentMailInterceptor) if    Rails.env.development?

Я также попытался добавить эту строку в свой файл production.rb, но сейчас он закомментирован во время тестирования:

config.action_mailer.default_url_options = {  :host => 'reelify.com' }

У кого-нибудь есть идеи?

1 ответ

Решение

Я предполагаю, что вы вводите пути в своей электронной почте, а не в URL:

users_path => /users
users_url => http://localhost:3000/users

В исходящем общении (электронная почта и т. Д.) Всегда убедитесь, что вы используете _urls

Другие вопросы по тегам