やりたいこと
ユーザが何件のコメントを投稿しているかカウントしたい
関係性
User 1
//UserModel
public function comments() {
return $this->hasMany(Comment::class);
}
Comments 多
// CommentModel
public function user() {
return $this->belongsTo(User::class);
}
withCountを利用して取得
$user = User::withCount('comments')->get();
$user->comments_count;
おまけ
カウントは取りたくないけど、コメントしているユーザだけを取得したい
User::has('comments')->get();