我的数组:
(rdb:381) pp params[:payments]
{"0"=>{":amount_paid"=>"100.00", ":date_paid"=>"2/27/2008"},
"1"=>{":amount_paid"=>"80.00", ":date_paid"=>"3/27/2008"},
"2"=>{":amount_paid"=>"100.00", ":date_paid"=>"5/8/2008"}}
我不相信这是对象。执行params[:payments].last
会返回此信息:
NoMethodError Exception: undefined method `last' for #<ActiveSupport::HashWithIndifferentAccess:0x1065e8448>
我正在尝试找到最后一项的索引。在这种情况下,答案是 2 ,或“2”
答案 0 :(得分:4)
嘿,你的数组实际上是一个哈希。您可以通过执行params[:payments].keys.map(&:to_i).max.to_s
将实际数组传回会更好。你是如何生成:payments
选项的?
答案 1 :(得分:0)
你的值是一个Hash,而不是一个数组,所以它没有排序或索引,除非你在Ruby 1.9上