如何从分页记录中获取页面2

时间:2019-06-13 13:13:57

标签: laravel lumen

在Laravel Lumen API项目中,我想获取分页记录的第2页。但这并没有给我带来任何结果。

$query = DB::table('cars');
$query->paginate(2, ['*'], 'page', 2);
$data = $query->get();

我如何实现呢?

感谢帮助。

3 个答案:

答案 0 :(得分:4)

要在Lumen / Laravel中分页记录,只需使用paginate()函数。它接受页码作为查询参数,您无需显式定义它。

此外,您无需将->get()paginate()添加。

//第二页的网址为:

http://example.com/something?page=2 

//分页器代码应为

$data = DB::table('cars')->paginate(2);

此处的参数(2)表示限制-要显示的记录数。

答案 1 :(得分:1)

您可以使用自己的代码

  

将表添加到构建器实例

$query = DB::table('cars'); 看起来不错

  

为构建器分页

$query->paginate(2, ['*'], 'page', 2); 看起来不错

但是您可以不使用prevoius方法进行修改,因此将应用分页,但是您无法访问

$paginated = $query->paginate(2, ['*'], 'page', 2); 可以正常工作

已编辑

正如您所说的,由于您已对页码进行了硬编码,因此记录中没有变化

所以

$paginated = $query->paginate(2, ['*'], 'page'); 将完美工作

从函数中删除最后一个参数 2 之后

现在$ paginated会赋予LengthAwarePaginatorInstance

因此,您需要将$paginated传递给 Json

希望很清楚

答案 2 :(得分:1)

流明中的分页应该与Laravel一样。

根据文档https://laravel.com/docs/5.8/pagination#basic-usage

要获取任何分页结果的页码,请使用您要检索的页面设置send?page查询字符串参数。