如何获得Laravel Eloqunt最新评论的帖子?

时间:2015-08-19 08:54:18

标签: php laravel eloquent relationship relation

我可以使用以下代码来获取帖子及其评论:

Post::with('comments')->where('status', 'publish');

现在,如何才能获得每篇文章的最新评论?

此外,如果有一种方法可以获得第一个加上最新评论的帖子,例如Instagram如何在主页上显示评论,那就太棒了!

Instagram Comment Section

3 个答案:

答案 0 :(得分:2)

尝试这样做最后5个提交:

 Post::with( ['comments' => function($c){
                $c->latest()->limit(5)->get() ;
            } ])->where('status', 'publish');

答案 1 :(得分:1)

试试这个:

  Post::with(array('comments' => function($query) {
    $query->where('status', 'publish')
    $query->orderBy('comments', 'DESC');

  }))->get();

答案 2 :(得分:1)

此帖article在帖子中提示:

public function latestComment()
{
    return $this->hasOne('Comment')->latest();
}

然后做:

$posts = Post::with('latestComment')->get();