Rails:LEFT JOINしてソートする
Rails:includesしてソートする - Hello world, I am kgmx.では
「別のテーブル(comment)のnameというカラムの値で降順にソートする」というのができなかったけど、できた!
やりたいこと:たくさんある本をコメントが多い順に上から並べる
■失敗
# Model.includes(:another_model).order("another_models.name desc") @books = Book.includes(:comment).order("comments.name desc")
■成功
@books = Book .joins("left join comments on books.id=comments.book_id") .group("books.id") .order("count(comments.id) desc")
本をコメントの多い順にソートすることができました。
でもleft joinがいまいちよくわからんです。