pbmedia / fractal-illuminate-paginator
此包已被废弃且不再维护。未建议替代包。
将 Illuminate 分页结果重新引入到您的 Fractal 序列化器中
1.0.1
2016-08-02 09:35 UTC
Requires
- php: >=7.0.9
- illuminate/pagination: ^5.1
- league/fractal: ^0.13.0
Requires (Dev)
- phpunit/phpunit: ^5.4
This package is auto-updated.
Last update: 2020-09-12 13:16:36 UTC
README
Fractal 包以不同于 Illuminate 分页器的不同方式序列化分页器。此特性将 Illuminate 分页器的序列化重新引入到 Fractal 序列化器中。扩展您选择的序列化器,使用此特性,您就完成了!
安装
您可以通过 composer 安装此包
composer require pbmedia/fractal-illuminate-paginator
使用方法
创建您自己的 Serializer
并使用此包中的特性
<?php namespace Pbmedia\App\Serializers; use League\Fractal\Serializer\DataArraySerializer as BaseSerializer; use Pbmedia\Serializers\FractalIlluminatePaginatorTrait; class DataArraySerializer extends BaseSerializer { use FractalIlluminatePaginatorTrait; }
没有特性时,分页结果将如下所示
{
data: [{
id: 1,
...
}, {
id: 2,
...
}, ...],
meta: {
pagination: {
total: 33,
count: 15,
per_page: 15,
current_page: 1,
total_pages: 3,
links: {
next: "http://project.dev/api/v1/company?page=2"
}
}
}
}
有特性时,分页结果将如下所示,就像将 Illuminate\Pagination\LengthAwarePaginator
转换为 JSON 一样。
{
data: [{
id: 1,
...
}, {
id: 2,
...
}, ...],
meta: {
pagination: {
total: 33,
per_page: 15,
current_page: 1,
last_page: 3,
next_page_url: "http://project.dev/api/v1/company?page=2",
prev_page_url: null,
from: 1,
to: 15
}
}
}
安全
如果您发现任何与安全相关的问题,请通过电子邮件 pascal@pascalbaljetmedia.com 而不是使用问题跟踪器。
鸣谢
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件。