私は2つのモデルを持っています:グループ&グループメンバーネストされたモデルの数に基づいて並べ替えるRailsクエリ?
私はグループを返します。最高のGroupMember Countでソートしますか?このタイプの結合/クエリの数をRailsでどのように設定しますか?唯一のグループテーブルの上に、
$ rails g migration add_group_member_counts_to_groups
# migration
def change
add_column :groups, :group_members_count, :integer, default: 0
end
class GroupMember < ActiveRecord::Base
belongs_to :group, counter_cache: true
end
class Group < ActiveRecord::Base
has_many :group_members
scope :order_by_group_members_count, order('group_members_count DESC')
end
Group.order_by_group_members_count # => What you're looking for
つだけのクエリ:
誰か他のアイデア? – AnApprentice