我有一个数组“群组”。每个组对象都有一个属性名称。我想获得所有这些名称的列表,也可能是相应的ID,以便在rails中的下拉列表中进行选择。
有没有非常红宝石的方法来做到这一点?
在PHP中,我会做类似的事情:
group_names = Array.new
Groups.each do |group|
group_names << group.name
end
但这根本不觉得非常红润。
答案 0 :(得分:3)
使用map
group_names = groups.map{|group| group.name}
或简短形式
group_names = groups.map(&:name)
答案 1 :(得分:1)
我认为你所寻找的基本上是这样的:
select(object, method, choices, options = {}, html_options = {})
例如:
<%= f.select("type_id", Object.all.collect {|o| [ o.name, o.id ] }) %>