微信扫一扫打赏支持

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、我们也可以直接就从我们写的分页方法中取数据

这个也非常简单,就不贴代码了

 
posted @   范仁义  阅读(329)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
历史上的今天:
2020-09-16 Tensorflow2(预课程)---8.1、cifar100分类-层方式
2020-09-16 Tensorflow2(预课程)---7.1、cifar10分类-层方式
2020-09-16 Tensorflow2(预课程)---6.1、fashion minist(服装分类)识别-层方式
2019-09-16 legend3---laravel中获取控制器名称和方法名称
2017-09-16 求最小生成树(暴力法,prim,prim的堆优化,kruskal)
2017-09-16 暴力求最短路
侧边栏

打赏

点击右上角即可分享
微信分享提示