【发布时间】:2019-01-09 21:41:20
【问题描述】:
我正在使用SendGrid 从我的应用程序中发送电子邮件。我想发送sender name 和sender email,例如from: 'Maxcreet <contact@maxcreet.com>'
使用 Letter Opener 和 MailTrap 可以正常工作,但 SendGrid 只显示发件人电子邮件。
这是我发送电子邮件的 SendGrid 函数。
def deliver!(mail)
email.from = SendGrid::Email.new(email: mail[:from].addrs.first.address)
email.subject = mail.subject
email.add_personalization(build_personalization(mail))
build_content(mail)
send!(email)
end
我使用puts 检查了mail[:from] 的值,它给出了以下值:
puts mail[:from] => Maxcreet <support@maxcreet.com>
puts mail[:from].addrs => Maxcreet <support@maxcreet.com>
puts mail[:from].addrs.first => Maxcreet <support@maxcreet.com>
puts mail[:from].addrs.first.address => support@maxcreet.com
以上 3 对我来说似乎还可以,但是当我在其中使用其中任何一个时
email.from = SendGrid::Email.new(email: mail[:from].addrs.first.address)
它没有发送我的电子邮件,甚至我在 sendgrid 仪表板中也找不到我的电子邮件。
在this 之后也尝试了email.fromname,但这甚至不起作用。
【问题讨论】: