标签: ruby-on-rails ruby arrays ruby-on-rails-3 ruby-on-rails-3.2
我有一组像[obj1, obj2, obj3, obj4,......]这样的对象。每个对象都有自己创建的日期现在我希望将数组划分为具有相同创建年份的子数组,如obj1& obj3具有相同的创建年2013和obj2& obj4有相同的创作年份,然后我想要一些像[[obj1,obj3],[obj2,obj4],...]这样的东西。如何将数组拆分为ruby中的子数组。感谢
[obj1, obj2, obj3, obj4,......]
obj1
obj3
2013
obj2
obj4
[[obj1,obj3],[obj2,obj4],...]
答案 0 :(得分:4)
根据您问题中的有限信息,我认为您需要这样的内容:
array.group_by { |o| o.created_at.year }.values
group_by执行分组但它会为您提供哈希值,因此您可以添加values值以将这些组拉出为数组数组。
group_by
values