laravel的post请求分页数据
laravel的post请求分页数据
一、总结
一句话总结:
可以直接paginate向前端返回分页数据,ajax请求的时候我们写个方法取需要的分页数据
开始用paginate
//5、获取用户的博客信息
$blogs=Blog::where('b_u_id',$login_u_id)->where('b_is_delete',0)->paginate(10);
$blogs=$blogs->toArray();
//dd($blogs);
if(!isset($blogs['next_page_url'])) $blogs['next_page_url']='';
if(!isset($blogs['prev_page_url'])) $blogs['prev_page_url']='';
$blogs_json=\GuzzleHttp\json_encode($blogs);
后面用自己
//获取视频对应分页博客的ajax
public function get_paginate_blogs(Request $request){
$back_data=[];
$back_data['valid']=0;
$back_data['message']='';
//获取用户id
Auth::guard('user')->user();
$login_u_id = Auth::guard('user')->user()->id;
$now_page=intval($request->input('now_page'));
$per_page_num=intval($request->input('per_page_num'));
//偏移量
$offset=($now_page-1)*$per_page_num;
if($offset<0) $offset=0;
//5、获取用户的博客信息
$blogs=Blog::where('b_u_id',$login_u_id)->where('b_is_delete',0)->offset($offset)->limit($per_page_num)->get();
$blogs=$blogs->toArray();
$blogs_json=\GuzzleHttp\json_encode($blogs);
$back_data['valid']=1;
$back_data['message']='获取博客分页数据成功!';
$back_data['blogs_json']=$blogs;
return $back_data;
}
二、laravel的post请求分页数据
操作真的非常简单
1、分页原理
其实分页就是查两次表:
1、查总数目
select count(*) as aggregate from `blogs` where `b_u_id` = 11 and `b_is_delete` = 0
2、查我们需要的数据,偏移offset,我们取的limit
select * from `blogs` where `b_u_id` = 11 and `b_is_delete` = 0 limit 10 offset 0
2、代码
1、可以直接paginate向前端返回分页数据,ajax请求的时候我们写个方法取需要的分页数据
开始用paginate
//5、获取用户的博客信息 $blogs=Blog::where('b_u_id',$login_u_id)->where('b_is_delete',0)->paginate(10); $blogs=$blogs->toArray(); //dd($blogs); if(!isset($blogs['next_page_url'])) $blogs['next_page_url']=''; if(!isset($blogs['prev_page_url'])) $blogs['prev_page_url']=''; $blogs_json=\GuzzleHttp\json_encode($blogs);
后面用自己
//获取视频对应分页博客的ajax public function get_paginate_blogs(Request $request){ $back_data=[]; $back_data['valid']=0; $back_data['message']=''; //获取用户id Auth::guard('user')->user(); $login_u_id = Auth::guard('user')->user()->id; $now_page=intval($request->input('now_page')); $per_page_num=intval($request->input('per_page_num')); //偏移量 $offset=($now_page-1)*$per_page_num; if($offset<0) $offset=0; //5、获取用户的博客信息 $blogs=Blog::where('b_u_id',$login_u_id)->where('b_is_delete',0)->offset($offset)->limit($per_page_num)->get(); $blogs=$blogs->toArray(); $blogs_json=\GuzzleHttp\json_encode($blogs); $back_data['valid']=1; $back_data['message']='获取博客分页数据成功!'; $back_data['blogs_json']=$blogs; return $back_data; }
2、我们也可以直接就从我们写的分页方法中取数据
这个也非常简单,就不贴代码了
版权申明:欢迎转载,但请注明出处
一些博文中有一些参考内容因时间久远找不到来源了没有注明,如果侵权请联系我删除。
在校每年国奖、每年专业第一,加拿大留学,先后工作于华东师范大学和香港教育大学。
2024-12-13:27岁,宅加太忙,特此在网上找女朋友,坐标上海,非诚勿扰,vx:fan404006308
AI交流资料群:753014672