合并集合上的手动分页器

时间:2015-03-20 13:20:37

标签: laravel-5 paginator

我有一个合并的集合,我想分页,我似乎无法解决这个问题。

首先,我需要手动创建paginator的原因是因为我首先获取2个集合并合并它们,如下所示:

$a = ModelA::all();
$b = ModelB::all();

$c = $a->merge($b);

下一步是对这个集合进行分页,我尝试了Paginator和LengthAwarePaginator

分页程序

$page = 1;
$results = new Paginator($c, 2, $page);

这里我在分页器中获得了第一个结果

$page = 2;
$results = new Paginator($c, 2, $page);

我仍然得到2个第一个结果,而我期望第三个和第四个结果(该集合超过2个元素长!)

LENGTHAWAREPAGINATOR

$page = 1;
$results = new LengthAwarePaginator($c, count($c), 2, $page);

在这里我得到了一个Paginator,但是这些项目包含了该集合的所有元素,无论我要求的页码是什么(而不是我要求的2个)

关于可能出现什么问题的任何想法? 提前谢谢

1 个答案:

答案 0 :(得分:0)

根据Laravel社区的说法,这是故意的。 您应该在将项目传递给Paginator之前对其进行切片。

相关问题