Laravel 4 分页链接为空页

3

我有一个查询返回了数百条数据库记录。

因为我想使用Laravel 4.2的方法进行分页,链接显示并指向search-view?page=1等等,但是这些链接打开的页面都没有结果。只有第一页包含了结果。

当我试图在没有分页的情况下展示这些结果时,页面永远不会结束,所以我需要进行分页。

控制器:

$results = $this->model->where($searchByColumn, '=', $searchKey)
                       ->paginate(30);

return View::make('search-view')
            ->with('results', $results);

查看:

@foreach ($results as $result)
   {{$result}} <br>
@endforeach

{{$results->links()}}

请帮忙解决这个问题好吗?(涉及IT技术)

提供search-view路由和其控制器的代码。 - Mahdi Younesi
@MahdiYounesi 这个路由只运行我在这里提供的前两个代码块。除此之外没有其他太多内容。我从数据库获取结果并将它们传递给视图,仅此而已。 - divHelper11
尝试使用以下代码进行分页操作:paginate($30, ['*'], 'page', $request->page); - Sohel0415
你试过APP_DEBUG=true吗?日志里没有错误吗? - brombeer
$searchByColumn和$searchKey是来自查询字符串的参数吗? - dparoli
显示剩余7条评论
1个回答

2
我猜您在第二页上没有看到任何记录,可能是因为$searchByColumn和$searchKey未定义,仅在第一页定义,因为它们作为表单的输入输入,但如果您遵循基本的分页器链接,则不会在其他页面上定义。
要通过连续请求保留$searchByColumn和$searchKey的值,可以将它们附加到分页器生成的链接中,类似于以下内容:
{{ $results->appends(
    array('searchByColumn' => $searchByColumn, 
    'searchKey ' => $searchKey ))->links() }}

调整代码以遵循您参数的名称,并不要忘记将它们传递给视图。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接