我是Laravel的新手,我正在开发一个测试项目,它将获得一些通过curl进行API调用的记录。我能够得到一个Object,我已准备好在我的控制器上处理它,如下所示:
$results = App::get_data($date);
$tasks = Paginator::make($results->data, count($results->data), 5);
我对手动分页的确如何工作感到困惑,我在$ results->数据上有10个项目,我已经在我的视图中打印出来,包括链接,但分页不起作用。手动分页是否适用于这种设置,我不在数据库上进行交互,而是通过curl从特定的API调用中提取数据。
答案 0 :(得分:0)
Laravel中的Paginator类最初打算与Eloquent ORM一起使用,例如:
User::all()->paginate($itemsPerPage);
要手动创建Paginator,您已经使用了正确的方法,并且没有明确记录,但Paginator :: make()不会自动为您切片,您也必须手动执行此操作。 ie(假设$ results-> data是一个数组)。
$itemsPerPage = 6;
$currentPage = 2;
$slicedResults = array_slice($results->data, $itemsPerPage * $currentPage, $itemsPerPage);
Paginator::make($slicedResults, $totalItems, $itemsPerPage);
以上示例将为您提供第3页的6个项目。