Rotaie ActionMailer con SendGrid
-
08-10-2019 - |
Domanda
sto usando SendGrid per inviare messaggi di posta elettronica su Heroku ...
Il problema finora è mentre funziona benissimo su Heroku, sul mio host locale non riesce.
In questo momento ho SendGrig installare qui, 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']
}
Che cosa è un modo Heroku / SendGrid per consentire me per assicurarsi i miei programmi di posta lavorano in DEV. E 'questo file setup_mail.rb una buona cosa? Dovrebbe essere nel file ENV? Eventuali altri pensieri?
Grazie
Soluzione
Utilizzando config / ambienti / [development.rb | production.rb] come TFE menzionato sopra suona come la sua la strada da percorrere. Basta mettere la configurazione ActionMailer in uno di quei file e modificarlo in base allo sviluppo | ambiente di produzione.
Si possono anche trovare le credenziali utilizzate da SendGrid Heroku emettendo il seguente comando:
Heroku config --long
Queste credenziali vengono utilizzate per tutti l'autenticazione SendGrid (autenticazione SMTP, sito web il login per visualizzare le statistiche, ecc, l'accesso API)
- Joe
SendGrid
Altri suggerimenti
Basta impostare le variabili d'ambiente sul vostro ambiente di sviluppo per SENDGRID_USERNAME
, SENDGRID_PASSWORD
e SENDGRID_DOMAIN
. Allora funzionerà.
È possibile ottenere i valori corretti per questi dal vostro Heroku app. Aprire console Heroku e ottenere i valori di ENV['SENDGRID_USERNAME']
e così via.
o semplicemente usare un diverso set di impostazioni SMTP locale. O l'uso sendmail o qualcosa del genere.