rails - URL-адрес ActionMailer для разработчиков и разработчиков - PullRequest
0 голосов
/ 17 ноября 2010

Я создавал приложение локально, и все почтовые программы использовали URL 0.0.0.0:3000, что я и хотел ...

Теперь я просто нажал на heroku, и URL-адреса не обновились до URL-адреса почтовой программы продукта. Я правильно настроил?

/ config / environment / production.rb

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

/ конфигурации / Инициализаторы / setup_mail.rb

ActionMailer::Base.smtp_settings = {
  :address              => "smtp.sendgrid.net",
  :port                 => "25",
  :authentication       => "plain",
  :domain               => "xxxxxxx.com",
  :user_name            => "xxxx@xxxxxx.com",
  :password             => "xxxxxxxxxxxxx"
}

# The to field is then changed so that the email is sent to
ActionMailer::Base.default_url_options[:host] = "0.0.0.0:3000"
Mail.register_interceptor(DevelopmentMailInterceptor) if Rails.env.development?

пока все URL-адреса все еще 0.0.0.0:3000, есть ли какие-то настройки, которые мне нужно установить, когда я нажимаю на heroku, чтобы указать, что рельсы находятся в рабочем режиме? Или я что-то испортил выше?

Спасибо

Ответы [ 2 ]

1 голос
/ 17 ноября 2010

Поставьте эту строку:

ActionMailer::Base.default_url_options[:host] = "0.0.0.0:3000"

в config / environment / development.rb , а также в config / environment / production.rb , но измените его в последнем, чтобы он соответствовал URL.

Поместив его в инициализатор, вы настраиваете его для всех сред, что неверно.

0 голосов
/ 05 сентября 2014

Добавьте эту строку в Gemfile:

gem "action_mailer_auto_url_options"

, и URL-адреса будут сопоставлены правильно автоматически.

...