Rails ActionMailer с Sendgrid
-
08-10-2019 - |
Вопрос
Я использую SendGrid, чтобы отправить электронные письма на Heroku ...
Проблема до сих пор, пока она отлично работает на Heroku, на моем местном хосте не удается.
Прямо сейчас у меня есть SendGrig Install здесь, config / setup_mail.rb:
ActionMailer::Base.smtp_settings = {
:address => "smtp.sendgrid.net",
:port => "25",
:authentication => :plain,
:user_name => ENV['SENDGRID_USERNAME'],
:password => ENV['SENDGRID_PASSWORD'],
:domain => ENV['SENDGRID_DOMAIN']
}
Что такое способ Heroku / Sendgrid позволит мне убедиться, что мои почтовые работы работают в разработке. Это setup_mail.rb файл хорошо? Если это будет в файле env? Любые другие мысли?
Спасибо
Решение
Использование конфигурации / окружения / [Development.rb | production.rb] Как упомянул выше, звуки, как его путь. Просто поместите конфигурацию ActionMailer в любой из этих файлов и измените его в соответствии с разработкой | производственная среда.
Вы также можете найти свои учетные данные SENDGRID, используемые Heroku, выдавая следующую команду:
Heroku Config --long.
Эти учетные данные используются для всех аутентификации SENDGRID (SMTP AUTH, Вход на сайт для просмотра статистики и т. Д., API Access)
- Джо
Sendgrid
Другие советы
Просто установите переменные среды на вашу среду разработки для SENDGRID_USERNAME
, SENDGRID_PASSWORD
, а также SENDGRID_DOMAIN
. Отказ Тогда это будет работать.
Вы можете получить правильные значения для них из вашего приложения Heroku. Откройте консоль Heroku и получите значения ENV['SENDGRID_USERNAME']
и так далее.
Или просто используйте другой набор настроек SMTP на месте. Или использовать sendmail или что-то.