bertbijnens / laravel-fractal-paginate
扩展Spatie的laravel-fractal包以支持内置分页
v1.2.2
2023-02-23 10:07 UTC
Requires
- php: ^8.0
- laravel/framework: ^8.0|^9.0|^10.0
- spatie/laravel-fractal: ^6.0
README
此包提供宏函数,可轻松实现分页。需要Spatie的Laravel fractal包装器。
安装
此包实现了Laravel自动发现。使用composer安装此包
composer require bertbijnens/laravel-fractal-paginate
使用方法
在fractal上使用"paginate"宏
return fractal()->paginate($query, $transformer);
分页宏的行为与集合方法相同。然而,它期望的是一个可查询的对象,而不是一个集合。
基于可用的请求变量,它将应用分页,并支持以下功能:
- 页面(从1开始)
- 偏移量
- 限制(目前限制为100)
- since(过滤自这个时间戳以来更新的对象)
- until(过滤到这个时间戳之前更新的对象)
响应看起来可能如下:
{
data: [
{},
{},
{},
....
],
links: {
next: 'https://.....?page=2&limit=5'
}
}
响应总是返回下一个URL,当没有更多数据时,这将是null。
可选分页
您可以将分页响应设置为可选
return fractal()->paginate($query, $transformer, false);
当第三个参数(paginationRequired,默认为true)设置为false且请求中没有分页参数时,响应将通过在fractal配置中设置的默认序列化器进行。