2017-07-05 1 views
0

J'utilise Rails 5. J'ai les configurations suivantes dans mes fichiers config/environments/development.rb et config/environments/staging.rb.Action Mailer Ne pas envoyer d'e-mails - MailCatcher et sendmail

config/environnements/development.rb

config.action_mailer.perform_deliveries = true 
config.action_mailer.raise_delivery_errors = true 
config.action_mailer.delivery_method = :smtp 
config.action_mailer.smtp_settings = { address: "localhost", port: 1025 } 

Quand j'appelle la méthode qui envoie un courriel, je reçois la sortie suivante.

Rendering mailer/consolidated_s3_storage_report.html.erb 
Rendered mailer/consolidated_s3_storage_report.html.erb (0.4ms) 
Mailer#consolidated_s3_storage_report: processed outbound mail in 17668.1ms 
=> #<Mail::Message:86763960, Multipart: true, Headers: <From: [email protected]>, <To: [email protected]>, <Subject: 2017 July - S3 Storage Report>, <Mime-Version: 1.0>, <Content-Type: multipart/mixed; boundary="--==_mimepart_595c962cc36fb_1be1b2198436941"; charset=UTF-8>> 

Mais les messages électroniques ne sont pas envoyés à mon compte Gmail. L'adresse 'de' est 'par défaut' à partir de laquelle tous les autres e-mails sont envoyés. Veuillez clarifier pourquoi mes courriels ne sont pas livrés.

+0

Avez-vous vérifié le dossier spam de votre compte gmail ...: D –

+0

Oui. Il n'est pas là aussi –

+0

Pouvez-vous essayer ceci à la place '' '' config.action_mailer.smtp_settings = {address: "127.0.0.1", port: 1025} '' ' –

Répondre

1

Vous semblez utiliser Mailcatcher. Mailcatcher ne délivre pas de messages, c'est pour empêcher les messages de livrer aux adresses e-mail To réelles, mais vous permet de vérifier que le message est encadré correctement. Les développeurs utilisent Mailcatcher dans les environnements de développement pour voir si les emails sont rendus comme ils l'attendent normalement sans spamming de la part de To.

Tous les courriels envoyés à Mailcatcher peuvent être consultés dans une interface Web. Visitez http://localhost:1080 sur votre ordinateur, vous devriez être en mesure de voir tous les e-mails que vous envoyez si loin de l'environnement de développement.

+0

Je cherchais dans http: // localhost: 1080 et le mailcatcher est vide. Il n'a pas les emails prévus. –

+1

Si vous avez fait '.deliver_now' sur l'objet e-mail et que vous n'avez pas vu d'erreur, il devrait être présent dans le Mailcatcher. Sinon, je suggère de vérifier votre configuration. – aBadAssCowboy

+0

Opps! Je n'ai pas ajouté .deliver_now lors de l'appel de l'expéditeur. Merci de l'avoir signalé. –

0

Voici la configuration pour le courrier d'envoi à gmail:

config/environnements/development.rb

config.action_mailer.default_url_options = { :host => 'localhost:3000' } 
config.action_mailer.delivery_method = :smtp 

config.action_mailer.smtp_settings = { 
     :address => "smtp.gmail.com", 
     :port => 587, 
     :domain => "gmail.com", 
     :user_name => "[email protected]", #your gmail id 
     :password => "password", #your gmail password 
     :authentication => "plain", 
     :enable_starttls_auto => true 
}