Laravel Eloquent paginate如何查询分页参数?

时间:2017-02-15 15:48:57

标签: php laravel laravel-5 eloquent laravel-eloquent

我有一个拥有API的Laravel项目。一些端点控制器对索引使用分页。

我想将分页参数公开给客户端。 原因是他们不必总是要求第一个项目,只是想知道每页有多少项目(例如,如果客户希望由于某种原因跳过前X项)。

我已尝试过paginate(0),但这会默认为16项。

是否有一种简单的内置方法可以做到这一点?

1 个答案:

答案 0 :(得分:2)

您可以转换Paginator results to JSON。这样做,您将获得一些元数据,包括项目总数,页数,当前页面等。

根据链接页面,如果我们有这样的路线:

Route::get('users', function () {
    return App\User::paginate();
});

它会返回这样的内容:

{
   "total": 50,
   "per_page": 15,
   "current_page": 1,
   "last_page": 4,
   "next_page_url": "http://laravel.app?page=2",
   "prev_page_url": null,
   "from": 1,
   "to": 15,
   "data":[
        {
            // Result Object
        },
        {
            // Result Object
        }
   ]
}

我认为这就是你要找的东西。

希望它对你有所帮助。