如何在laravel
中为每位用户发表一条评论,以获取我最近的10条评论我看到了this,但我想用干净利落的方式做到这一点
答案 0 :(得分:1)
你试过吗
Comment::groupBy('user_id')->limit(10)->get();
如果您想获得最新评论,请创建一个名为UserComment的类并为每个用户存储最新的comment_id,并为每个创建的新评论更新它,然后您可以通过
获取最新的10条评论UserComment::orderBy('updated_at')->limit(10)->get();
答案 1 :(得分:0)
这是逻辑:
Comment::groupBy('user_id')->orderBy('id', 'desc')->first();
答案 2 :(得分:0)
如果您能找到最高ID的最新评论:
$ids = Comment::selectRaw('MAX(id) id')->groupBy('user_id')->take(10)->pluck('id');
$comments = Comment::whereIn('id', $ids)->orderByDesc('id')->get();