我在网络应用程序中发送电子邮件时遇到了一些问题。当我运行开发时,即使它在控制台中显示为已发送,也不会发送电子邮件。
这是我在config / environments / development.rb
中的设置# Email
config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.smtp_settings = {
address: 'smtp.gmail.com',
port: '587',
enable_starttls_auto: true,
user_name: ENV["gmail_username"],
password: ENV["gmail_password"],
authentication: :plain,
domain: 'gmail.com'
}
在我的控制器中,我使用此电话发送邮件:
JobMailer.send_accept_job_mail(@app_user, @job.id).deliver
邮件显示为"已发送"在控制台中,但它不会发送到指定的邮件。
答案 0 :(得分:3)
您需要使用deliver!立即发送邮件。
只需将代码更新为
即可JobMailer.send_accept_job_mail(@app_user, @job.id).deliver!
- 根据评论编辑使用deliver!
方法。