专栏首页Debug客栈Laravel5.8学习日常之分页

Laravel5.8学习日常之分页

传统分页

在平常的代码撰写中,分页是一个比较头疼的一件事,总结一下,现在分页可以分为两种分页大类,分别是后端分页及前端分页。

前端分页就是后台将数据库中的全部或部分数据传输至前台,前台JavaScript语言进行数据截断分别展示,优点:省去了与后台的交互,减少对数据库的压力;缺点:要是数据量比较庞大,就会造成浏览器端处理数据延时大,界面加载缓慢。

后端分页分为页面有刷新请求及无刷新请求(Ajax请求),就是前台采用按钮事件或者Ajax请求的方式,告知后台进行分页,同时后台进行计算偏移量及当前页码,进行对应页码数据的请求,之后后台查询好数据进行向前台数据进行传递,前台数据根据接受的数据进行渲染响应。

Laravel分页

Laravel分页是典型的后台分页,不过它将分页进行了封装,只需要调用它封装好的数据就可以实现分页。

数据分页有几种方法。最简单的是使用 查询构造器 或 Eloquent query 的 paginate 方法。paginate 方法根据用户浏览的当前页码,自动设置恰当的偏移量 offset 和限制数 limit。默认情况下,HTTP 请求中的 page 查询参数值被当作当前页的页码。Lavarel 自动侦测该值,并自动将其插入到分页器生成的链接中。 在其它框架中,分页可能非常痛苦。Laravel 的分页器将 查询构造器 和 Eloquent ORM 结合起来,提供了方便、易用的数据库结果集分页。通过分页器生成的 HTML 兼容 Bootstrap CSS 框架。 laravel文档介绍

Laravel分页只需要两个步骤: (1)控制器初始化方法增加paginate方法,向前台渲染数据即可; (2)前台将添加一个Laravel自带的语法{{ $data->links() }}

后端处理代码如下:

/*
 * 后台用户管理页面方法
 */
public function index(){
    //计算数据库中的用户条数
    $count = DB::table("user")->count();
    //正序读取数据并执行分页
    $data = DB::table("user")->orderBy("id","asc")->paginate(10);
    //加载页面
    return view('admin.user.index')->with('data',$data)->with('count',$count);
}

前台显示代码:

<div class="admin-page">
    {{ $data->links() }}
</div>

本文链接:https://www.debuginn.cn/3119.html

本文采用CC BY-NC-SA 3.0 Unported协议进行许可,转载请保留此文章链接

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • PHP解决中文字符编码问题

    很多初学者包括我在日常的练习之中,会遇到浏览器中对中文字符出现乱码现象,对此在此处做一下总结,以免以后回踩坑?

    Debug客栈
  • Vue.js入门笔记 Vue基本指令学习

    操作元素的 class 列表和内联样式是数据绑定的一个常见需求。因为它们都是属性,所以我们可以用 v-bind 处理它们:只需要通过表达式计算出字符串结果即可。...

    Debug客栈
  • 数据结构 分块查找法

    分块查找,也叫索引顺序查找,算法实现除了需要查找表本身之外,还需要根据查找表建立一个索引表。

    Debug客栈
  • 分享一个php分页类

    作为php小白来说,很多时候我们在做网站分页,都要手敲一遍分页的代码部分,这样开发效率巨慢,且还会出现各种各样的小错误,又要来一遍调试运行在调试,知识还...

    benny
  • Oracle的窗口和自动任务

    Oracle数据库自己会例行做一些定时任务,比如会自动进行统计信息收集等作业任务。如果统计信息收集的时间正好赶上业务的高峰期,那就有可能由此引发一系列性能故障。...

    Alfred Zhao
  • pytorch 加载数据集

    pytorch初学者,想加载自己的数据,了解了一下数据类型、维度等信息,方便以后加载其他数据。

    py3study
  • HT for Web整合OpenLayers实现GIS地图应用

    HT for Web作为逻辑拓扑图形组件自身没有GIS功能,但可以与各种GIS引擎即其客户端组件进行融合,各取所长实现逻辑拓扑和物理拓扑的无缝融合,本章将具体介...

    HT for Web
  • (数据科学学习手札37)ggplot2基本绘图语法介绍

      ggplot2是R语言中四大著名绘图框架之一,且因为其极高的参数设置自由度和图像的美学感,即使其绘图速度不是很快,但丝毫不影响其成为R中最受欢迎的绘图框架;...

    Feffery
  • 原 HTML5 网络拓扑图整合 OpenL

    HT_hightopo
  • HT for Web整合OpenLayers实现GIS地图应用

    HT_hightopo

扫码关注云+社区

领取腾讯云代金券