未定义的方法`&#39;对于#<emailmessagescontroller:0xad910d4>

时间:2016-09-23 14:29:12

标签: ruby-on-rails ruby gmail-api

我正在

undefined method ` ' for #<EmailMessagesController:0xad910d4>

在这一行

array = header.reject { |hash| hash.name != 'From' }

我试图从gmail消息数组头部分中获取param。

虽然如果我将此代码放在视图文件中,但是这个代码没有错误,但是在控制器中我得到了未定义的方法错误。

    result = service.get_user_message('me',msg.id)
    header = result.payload.headers 
    array = header.reject { |hash| hash.name != 'From' }
    array.first.value

1 个答案:

答案 0 :(得分:0)

我能够找到另一种方法来获取所需的标题,并且rails不会抛出错误。它工作正常。我认为铁路拒绝在数据解析方面存在一些问题

hash = Hash.new
result.payload.headers.each do |hedr|
hash[hedr.name] = hedr.value            
end
from = hash['From']