TP5分页使用方法说明

TP5分页的使用方法,在手册中有详细的说明

控制器中关键代码如下:

// 查询状态为1的用户数据 并且每页显示10条数据$list = Db::name('user')->where('status',1)->paginate(10);// 把分页数据赋值给模板变量list$this->assign('list', $list);// 渲染模板输出return$this->fetch();

模板文件中分页输出代码如下:

{volist name='list' id='user'}

{$user.nickname}

{/volist}

{$list->render()}

上面的方法非常简单,但是如果我想在查询出来的数据中加入新的值的,上面的方法就不能用了,当你尝试对$list进行循环的时候,会报如下的错误

Indirect modification of overloaded element of think\paginator\Collection has no effect

这是因为$list不是一个数组,而是数据集对象think\Collection手册地址

select()返回的是二维数组结果集,paginate()返回的是对象类型的结果集

下面是我的处理方法

// 查询状态为1的用户数据 并且每页显示10条数据$list = Db::name('user')->where('status',1)->paginate(10);// 获取分页显示$page = $list->render();$data = $list->all();foreach($dataas$key=>$val){    $data[$key]['key'] = $key;}$this->assign('data', $data);$this->assign('page', $page);// 渲染模板输出return$this->fetch();

模板文件中分页输出代码如下:

{volist name='data' id='user'}

{$user.nickname}

{/volist}

{$page}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,951评论 19 139
  • PLEASE READ THE FOLLOWING APPLE DEVELOPER PROGRAM LICENSE...
    念念不忘的阅读 13,550评论 5 6
  • FreeMarker的模板文件并不比HTML页面复杂多少,FreeMarker模板文件主要由如下4个部分组成: 1...
    年轻小伙程序员阅读 3,057评论 0 5
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,766评论 18 399
  • 看着那月满西楼, 看着那新月如钩, 看着那落满灰尘的往日成殇成痴。 哎,求而不得的你 留有我那青涩的过去 玉兔依旧...
    黄小邪师傅阅读 292评论 0 1