Ruby on rails Rails 3-如何按重复数对数组排序
Ruby on rails Rails 3-如何按重复数对数组排序,ruby-on-rails,arrays,sorting,Ruby On Rails,Arrays,Sorting,对不起,我想我的问题是 假设我有一组带有用户id和评论id的帖子评论员 例如: 1-27 2-31 1-54 3-87 1-12 2-54 如果我想根据用户的评论数量对其进行排名,我必须计算他们评论的次数,然后.uniq it 我该怎么做? 我知道如何统一它: unique_user_list = array.uniq {|s| s.user_id} 我知道如何计算阵列中的重复项: array.count { |u| u.name == unique_user_list.name } # i
对不起,我想我的问题是 假设我有一组带有用户id和评论id的帖子评论员
例如:
1-27
2-31
1-54
3-87
1-12
2-54
如果我想根据用户的评论数量对其进行排名,我必须计算他们评论的次数,然后.uniq it 我该怎么做? 我知道如何统一它:
unique_user_list = array.uniq {|s| s.user_id}
我知道如何计算阵列中的重复项:
array.count { |u| u.name == unique_user_list.name } # in a loop of user
但我不知道如何根据重复的数量进行混合和排序。。。
谢谢大家! 编辑 好的,多亏了floatless,我现在看到了一些更具体的东西——通过使用quimby gem的foursquare api的一个真实示例:
- current_user.all_checkins.group_by(&:venue["id"]).first(50).each do |c|
= c.venue.id
唯一的问题是,它没有。。。。小组有什么想法吗?我认为您应该在SQL查询中使用
GROUP BY
子句来实现这一点,然后只计算分组注释 我的示例是一个虚拟示例-我从api获得一个数组,不要认为group_by在这里起作用。。。