我的变量调用项目包含以下值的项目数组
[[#<Item id: 16, item_name: "Titan limited edition watch", description: "This is watch", reference_no: 21541, price: 5000, currency_type: nil, payment_type: "0", created_at: "2012-02-29 06:53:38", updated_at: "2012-02-29 06:53:38", quntity: 500, avatar_file_size: 8805, avatar_file_name: "images.jpg", avatar_content_type: "image/jpeg", avatar_updated_at: "2012-02-29 06:53:38">], [#<Item id: 25, item_name: "Titan limited edition watch", description: "this is watch", reference_no: 2, price: 5000, currency_type: nil, payment_type: "0", created_at: "2012-03-02 13:06:39", updated_at: "2012-03-02 13:06:39", quntity: 5, avatar_file_size: 8805, avatar_file_name: "images.jpg", avatar_content_type: "image/jpeg", avatar_updated_at: "2012-03-02 13:06:39">]]
我尝试像这样做一个循环
@items.each do |item|
end
和item变量包含以下值
[#<Item id: 16, item_name: "Titan limited edition watch", description: "This is watch", reference_no: 21541, price: 5000, currency_type: nil, payment_type: "0", created_at: "2012- 02-29 06:53:38", updated_at: "2012-02-29 06:53:38", quntity: 500, avatar_file_size: 8805, avatar_file_name: "images.jpg", avatar_content_type: "image/jpeg", avatar_updated_at: "2012-02-29 06:53:38">]
但是当我尝试跟随时给我错误
@items.each do |item|
item.item_name
end
错误是
undefined method `item_name' for #<Array:0xb6c1dffc>
请帮帮我。 感谢。
答案 0 :(得分:0)
你有一个数组数组;在循环内部,item
是一个数组,而数组没有item_name
方法。你需要得到数组中的项目。
@items.each do |item|
item[0].item_name
end
你也可以flatten
数组使其成为一维的:
@items.flatten.each do |item|
item.item_name
end