使用Mail gem(即Rails ActionMailer),是否有一种干净的方式来获取收件人的显示名称?
我可以通过以下方式获取地址:
mail.to.first
mail.header_fields.select{ |f| f.name == "To" }.first.to_s
但是我怎样才能得到显示名称部分(即<和>之前).我知道有人会建议一个正则表达式,但这不是我想要的,因为我必须解析任何编码,这是Mail宝石可能已经做的事情.我是PHP中一个流行的Mailer库的作者,并且我意识到在<之前假设该位的陷阱.和>当8位字符进入游戏时,在标题中是人类可读的.
我可以做这个:
mail.header_fields.select{ |f| f.name == "To" }.first.parse.individual_recipients.first.display_name.text_value
但必须有更好的方法吗?