如何按记录频率计算和排序表

时间:2013-12-25 08:05:15

标签: ruby-on-rails activerecord

我的应用程序中有两种不同的情况,我需要应用相同的东西。我需要拿一张桌子来获得特定记录出现次数的输出。因此,例如,我有用户和用户has_many交互。交互has_one fb_user。所以我要做的是获取一个用户列表,按用户进行的交互次数排序。结果应该是这样的数组:

frequency of interactions => list of user ids
1 => [233, 342, 567]
2 => [321 884]
n => [x, y, z]

以下是模型的用法:

交互类

class Interaction < ActiveRecord::Base

  has_one :fb_user

FbUser Class

class FbUser < ActiveRecord::Base

  has_many :interactions

然后第二种情况类似,但我没有获得用户列表,而是想获得fb_page_ids列表。 fb_pages看起来像这样:

FbPage Class

class FbPage < ActiveRecord::Base

   has_many :fb_users,
      through: :interactions
   has_many :interactions

我该怎么做?

0 个答案:

没有答案