Rails 活动记录项目分区



所以,这是一个更容易的问题。我有一个活动记录对象,如下所示:

Item
  --id
  --attribute 

我需要按属性键拆分"Item"数组,因此我希望像这样拆分各种数组。

[<#Item :id => 1, :attribute => 1>,<#Item :id => 4, :attribute => 1>,<#Item :id => 7, :attribute => 1>]
[<#Item :id => 2, :attribute => 2>,<#Item :id => 5, :attribute => 2>,<#Item :id => 8, :attribute => 2>]
[<#Item :id => 3, :attribute => 3>,<#Item :id => 6, :attribute => 3>,<#Item :id => 9, :attribute => 3>]

我该怎么做?

这应该给你一个数组数组,其中每个子数组都有相同的attribute

Items.all.group_by(&:attribute).values

编辑:由于您使用的是ActiveRecord,因此可以在数据库中分组。我自己更像是一个DataMapper的人,但应该是大致的:

Items.find(:all, group: 'attribute')

相关内容

  • 没有找到相关文章

最新更新