sammyt / paginate-collection
允许Laravel用户通过全局辅助方法分页集合。目前Laravel只允许使用原生查询构建器分页。
v1.0.1
2021-10-01 22:52 UTC
This package is auto-updated.
Last update: 2024-09-29 05:56:56 UTC
README
描述
允许Laravel用户通过全局辅助方法分页集合。目前Laravel只允许使用原生查询构建器分页。
用法
作为一个简单的内联示例,我使用以下命令创建了一个新的Laravel项目: laravel new MyProject
在 MyProject 中
- 设置一个
.env文件,连接到本地数据库。 - 运行内置迁移,确保已创建
users表。 - 使用
tinker在users表中创建一些测试用户,或者手动在您的数据库中创建它们
要测试,您可以调用此全局方法并传入您的集合。其他方法参数是可选的。接受的参数包括
$collection=> 必需$perPage=> 默认为15,但也接受int$currentPage=> 默认为null,但也接受int$options=> 您希望传递的任何其他选项
以下是如何使用 paginate_collection 全局辅助方法的一个示例用例。
按照上述步骤1-3,然后在 web.php 中创建一个路由,该路由具有一个回调 function,允许您返回一个集合进行测试
Route::get('/users', function() {
$userCollection = User::all();
$paginatedUsersCollection = paginate_collection(
$userCollection,
10,
null
);
dd($paginatedUsersCollection);
});
输出
Illuminate\Pagination\LengthAwarePaginator {#251 ▼
#total: 2
#lastPage: 1
#items: Illuminate\Support\Collection {#265 ▶}
#perPage: 10
#currentPage: 1
#path: "/"
#query: []
#fragment: null
#pageName: "page"
+onEachSide: 3
#options: []
}
如您所见,它使用 LengthAwarePaginator 在幕后,并且您的集合现在已分页。