我有一个实例变量@items
,它来自于在控制器操作中执行@items = Item.all
。 Item
类看起来像这样:
class Item < ActiveRecord::Base
attr_accessible :weight, :color, :price
validates :color, presence: true
validates :price, presence: true
end
我想要做的是获取:id
控制器操作中所有项目的@items
属性的值,其中我试图获取ID看起来像这样:
def get_item_ids
@items = Item.all
item_ids = ??? ## i'm stuck here
end
如何将item_ids
作为:id
内@items
项属性的数组?
答案 0 :(得分:2)
如果你只需要id而不是整个对象本身,MrYoshiji的答案是最好的:
item_ids = Item.scoped.pluck(:id)
但是,如果你已经在@items中拥有了一系列项目,那么你可以这样做:
item_ids = @items.map(&:id)