我一直在尝试使用我的gmail帐户发送一些测试通讯作为smtp,但当我尝试发送给多个收件人时 - ['emai @ laddr @ email.com,emailaddr2 @email.com'] - 在这种情况下,第一个电子邮件地址不正确 - 它给我一个错误 555 - 5.5.2语法错误,并且该过程在不通过下一个电子邮件地址的情况下停止。
我的问题是: 是否有可能绕过这类错误以跳过错误的地址并继续发送电子邮件?
答案 0 :(得分:1)
您可以将ActionMailer设置为忽略投放错误,但这并不是生产环境中的最佳实践。
# environment.rb (or development/test etc)
ActionMailer::Base.raise_delivery_errors = false
如果您没有很多收件人,您可以尝试循环遍历地址数组并为每个收件人发送电子邮件,挽救交付错误并向日志添加消息。
# Model
def send_emails(addresses)
addresses.each do |address|
begin
YourMailer.deliver_method(email)
rescue
logger.error "Could not send email to #{email}"
end
end
end