//paginate()扩展
QueryBuilder::macro('pages',function ($pagesize){
$results = $this->paginate($pagesize);
$items = $results->items();
$results->lists = [];
foreach ($items as $item){
$results->lists[] = (array)$item;
}
return $results;
});
public function index(Request $request)
{
//接收前端传来的每页显示条数
$limit = (int)$request->perpage;
//如果前端不传值,给个默认值
$limit = $limit>0?$limit:5;
//使用自己封装的分页方法来得到分页结果
$results = DB::table('xpcms_article')->pages($limit);
//访问自己封装好的属性lists,得到前端循环的数组
$data['articles'] = $results->lists;
//调用links()并传参,参数是自己封装好的分页条视图文件
$data['links'] = $results->links('public.paginate');
return view('admins.content.index',$data);
}
在前端渲染时不用再多花心思去想要循环的数据是对象还是数组的问题了。