首页 > 解决方案 > Laravel 分解分页的雄辩查询

问题描述

我目前有:

$comments = $this->post->comments()
    ->where('comment', 'like', "%{$search}%")
    ->paginate(50);

但我想做类似下面的事情,因为我要应用多个过滤器:

$comments = $this->post->comments();

if(condition)
{
    $comments->where('comment', 'like', "%{$search}%");
}

$comments->paginate();

但是上面的代码不起作用,因为我$comments->links()在视图中的分页链接之类的东西上出现错误,表明这不起作用。

标签: laravel

解决方案


$comment =查询子句前面缺少它:

$comments = $this->post->comments();

if(condition)
{
    $comments = $comments->where('comment', 'like', "%{$search}%");
}

$comments = $comments->paginate();

推荐阅读