订购嵌套的has_many:通过关联计数

时间:2013-10-23 09:02:56

标签: ruby-on-rails ruby-on-rails-3 activerecord arel squeel

我正在尝试按照与特定组的用户关联的降序频率顺序对标签进行排序。 (ActiveRecord& Rails 3.2 - 如果有帮助,我也会安装Squeel!)

用户拥有标签,群组拥有用户。因此,群组通过用户拥有标签。

class Group < ActiveRecord::Base
  has_many :users_groups  # join table
  has_many :users, through: :users_groups
  has_many :tags, through: :users

class User < ActiveRecord::Base
  has_many :users_groups  # join table
  has_many :groups, through: :users_groups
  has_many :taggings      # join table
  has_many :tags, through: taggings

class Tag < ActiveRecord::Base
  has_many :taggings      # join table
  has_many :users, through: taggings

史蒂夫[https://stackoverflow.com/a/11624005/59195]和Amol [https://stackoverflow.com/a/10958311/59195]的这些答案最接近我正在尝试做的事情 - 尽管我只想通过以下方式订购标签他们作为该组成员的用户使用/关联的频率,而不是所有用户。

有什么想法吗?谢谢你的帮助!

0 个答案:

没有答案