Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 使用Rails3邮件_Ruby On Rails_Ruby_Ruby On Rails 3_Email - Fatal编程技术网

Ruby on rails 使用Rails3邮件

Ruby on rails 使用Rails3邮件,ruby-on-rails,ruby,ruby-on-rails-3,email,Ruby On Rails,Ruby,Ruby On Rails 3,Email,如何使用新的rails 3 mail从电子邮件的前端字段获取名称部分 在实际电子邮件中,有一个“发件人”字段,如下所示: <From: rogger rabbit <roggerrabbit@hotmail.com>> 如果我先发mail.from.我得到roggerrabbit@hotmail.compart但它是如何命名的呢,比如rogger rabbit 非常感谢 Rick您可能需要尝试解码方法: mail.from.first.decoded 查看mail

如何使用新的rails 3 mail从电子邮件的前端字段获取名称部分

在实际电子邮件中,有一个“发件人”字段,如下所示:

<From: rogger rabbit <roggerrabbit@hotmail.com>>

如果我先发
mail.from.
我得到
roggerrabbit@hotmail.com
part但它是如何命名的呢,比如rogger rabbit

非常感谢
Rick

您可能需要尝试
解码方法:

mail.from.first.decoded

查看mail-2.2.17/lib/mail/elements/address.rb,我发现:

a = Address.new('Mikel Lindsaar (My email address) <mikel@test.lindsaar.net>')
a.format       #=> 'Mikel Lindsaar <mikel@test.lindsaar.net> (My email address)'
a.address      #=> 'mikel@test.lindsaar.net'
a.display_name #=> 'Mikel Lindsaar'
a.local        #=> 'mikel'
a.domain       #=> 'test.lindsaar.net'
a.comments     #=> ['My email address']
a.to_s         #=> 'Mikel Lindsaar <mikel@test.lindsaar.net> (My email address)'
a=Address.new('Mikel Lindsaar(我的电子邮件地址)'))
a、 格式#=>“Mikel Lindsaar(我的电子邮件地址)”
a、 地址#=>'mikel@test.lindsaar.net'
a、 显示“米克尔·林德萨尔”
a、 本地#=>“米克尔”
a、 域#=>“test.lindsaar.net”
a、 评论#=>[“我的电子邮件地址”]
a、 致“Mikel Lindsaar(我的电子邮件地址)”

尝试使用类似邮件[:from].addrs.collect{| a | a.display_name}

在整个上午把头发扯掉之后,我终于找到了这个解决方案:

message[:from].display_names.first
其中“message”是您可能正在迭代的邮件对象


注意:如果发送者没有显示名称,则该名称将为零。

tadman i get undefined method'decoded'for“regerrabbit@hotmail.com“:当我发送email.from.first.decoded时使用字符串???我只是浏览了一下,希望是这样。”。