在Ruby on Rails中设置发件人电子邮件的名称的方法

71 阅读1分钟

在Ruby on Rails中发送电子邮件是非常简单的,而且我们往往不会过多考虑邮件是否被收到的问题。然而,对细节的关注是很重要的。

我也掉进了这个陷阱,我从来没有注意到正在生成的电子邮件上所显示的名字。回顾一下,每个电子邮件地址上的名字都显示为support

我开始调查这种混淆的原因。我试着从我的邮件客户端手动发送邮件,结果是正确的。由于邮件是通过亚马逊SES发送的,我在那里查看了一下,因为我最初是通过那里验证的邮件地址。

这促使我查看了我的应用程序,看看我在哪里可以潜在地解决这个问题。

在ApplicationMailer文件中,app/mailers/application_mailer.rb ,我们可以设置默认的邮件地址,最初我的文件是这样的

class ApplicationMailer < ActionMailer::Base 
  helper ApplicationHelper 
  default from: 'support@driftingruby.com' 
  layout 'mailer' 
end

修复方法其实很简单。我把default from: 改为

default from: 'Drifting Ruby <support@driftingruby.com>'

并部署了代码。

这种显示名称的格式'descriptive name <email address>' ,是很常见的,而且被广泛接受。

问题得到了解决。花点时间检查一下你的邮件,确保它们是用一个描述性的名字发送的。