2016-12-27 5 views
1

laravelを使用しています。5.2質問があります。 PostモデルとCommentモデルがあります。コメントがあるかどうかにかかわらず、コメント付きの投稿をすべて入手したい。そして、私は彼らのコメントによって投稿を注文したい、投稿のようなコメントは前面にあり、投稿にはコメントがない。これをどのように終えるのですか?ありがとう。リレーション値でモデルの順序を取得する方法null nullではない

$posts = Post::withCount('comments') 
     ->orderBy('comments_count', 'desc') 
     ->get(); 

これはそれに続く最初の場所と安静時commentsを持っている投稿を注文します:

答えて

3

あなたに数えるのコメントでwithCountと順番にそれらを使用することができます。

実際 はあなたの結果のモデルに {relation}_count列を配置しますwithCount方法を、使用することができ、それらをロードすることなく関係からの結果の数をカウントします。

+0

ありがとうございます。私はこの方法を忘れる。ありがとう。 – DengDeng

関連する問題