Laravel,如何将集合对象转换为构建器对象

时间:2018-02-16 17:47:38

标签: laravel collections builder

我需要在集合上使用paginate和simplepaginate,所以我试图将集合转换为构建器对象。 为此,我正在考虑创建一个函数来获取集合中每个项目的id,然后用它构建一个查询,但在我看来,就像很多资源一样, 有更简单的方法吗?

1 个答案:

答案 0 :(得分:0)

更好的方法是build paginator object manually使用现有的集合。

来自the docs

  

有时您可能希望手动创建分页实例,并向其传递一系列项目。您可以根据需要创建Illuminate\Pagination\PaginatorIlluminate\Pagination\LengthAwarePaginator实例来实现此目的。

     

Paginator类不需要知道结果集中的项目总数;但是,因此,该类没有检索最后一页索引的方法。 LengthAwarePaginator接受与Paginator几乎相同的参数;但是,它确实需要计算结果集中的项目总数。

     

换句话说,Paginator对应于查询构建器和Eloquent上的simplePaginate方法,而LengthAwarePaginator对应于分页方法。