看了看推荐的分页类的使用,还是很简单的,可是自己去尝试改写生成的分页类结构就会很麻烦,总是不成功,后来发现手册里面还有这个
就说你想重写分页类,就需要这样做
赶紧实践了一下,先改这里的provider.php
然后新建这个app/common/MyPaginator.php 然后在里面很简单写一下这个
<?php namespace app\common; use think\paginator\driver\Bootstrap; class MyPaginator extends Bootstrap { /** * 渲染分页html * @return mixed */ public function render() { if ($this->hasPages()) { if ($this->simple) { return sprintf( '<div class="pagination"><ul>%s %s</ul></div>', $this->getPreviousButton(), $this->getNextButton() ); } else { return sprintf( '<div class="pagination"><ul>%s %s %s</ul></div>', $this->getPreviousButton(), $this->getLinks(), $this->getNextButton() ); } } } }
只要做个继承,然后重写render方法即可.
然后控制器这边这样用
页面上面直接
<?php namespace app\model; use think\Model; class XXXModel extends Model { protected $name = 'ticket'; public function list_data(array $where = []) { return self::where($where)->field("id, status, add_time")->order('id', 'desc')->paginate(10); } }
则有就能生成分页了
效果如图
如果这样写 paginate(10, true)
就能获得简单的分页 上一页 下一页那种
看来还是要多看手册呢