6
我有,我正在使用GROUP_BY活動記錄順序
@foo = Foo.group_by(&:relation)
然後主動記錄查詢視圖我使用
@foo.each do |group, values|
group x has values.count elements
end
有沒有一種方法,我可以按每個組的數量來排序嗎?
我有,我正在使用GROUP_BY活動記錄順序
@foo = Foo.group_by(&:relation)
然後主動記錄查詢視圖我使用
@foo.each do |group, values|
group x has values.count elements
end
有沒有一種方法,我可以按每個組的數量來排序嗎?
group_by不是ActiveRecord方法,組是。 group_by是一個枚舉器方法。
約
@foo = Foo.group('relation').order('count_id asc').count('id')
從"Order by" result of "group by" count?採取什麼。
否則,如果你想它在Ruby的層次進行排序,你可以爲#做
disordered_hash = {:two=>[1, 2], :one=>[1], :three=>[1, 2, 3]}
ordered_array = disordered_hash.sort {|k, v| k[1].count <=> v[1].count} # add .reverse if you want
# => [[:one, [1]], [:two, [1, 2]], [:three, [1, 2, 3]]]
未定義的方法'秩序」 <哈希:0xc03dd68> – 2012-08-09 03:17:20
如果你改變GROUP_BY到組是什麼?編輯我的答案。 – oldergod 2012-08-09 04:45:41
這會工作,我會給你。 雖然我認爲這是在db級別上進行分組,而另一個給我的東西,我可以在ruby中迭代。 – 2012-08-17 05:54:15