たとえば、以下のようなモデルがあります。

class Post
  has_many :favorites
end

class User
  has_many :favorites
end

class Favorite
  belongs_to :user
  belongs_to :post
end

このとき、記事(Post) を、ユーザーによるお気に入り (Favorite) の数でソートしたいです。これは、どうやったら実現できるでしょうか? Favorite は、 (user, post) にたいしてユニークです。