对API资源使用分页
就像你可以传递一个Eloquent模型集合到资源一样,你也可以传递一个分页器实例,如示例13-25
Route::get('dogs', function () {
return new DogCollection(Dog::paginate(20));
});
如果传递一个分页器实例,则转换后的结果将包含分页信息(第一页、最后一页、上一页和下一页)和有关整个集合的元信息。
你可以看一下示例13-26,看看这些信息是什么样子的。在这个例子中,我通过调用Dog::paginate(2)将每页的项目数设置为2,这样可以更容易地看出是如何工作的。
{
"data": [
{
"name": "Pickles", "breed": "Chorkie",
},
{
"breed": "Golden Retriever Mix",
}
],
"links": {
"first": "http://gooddogbrant.com/api/dogs?page=1",
"last": "http://gooddogbrant.com/api/dogs?page=3",
"prev": null,
"next": "http://gooddogbrant.com/api/dogs?page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 3,
"path": "http://gooddogbrant.com/api/dogs", "per_page": 2,
"to": 2,
"total": 5
}
}
Last updated
Was this helpful?