TP5分页使用方法说明
TP5分页的使用方法,在手册中有详细的说明
控制器中关键代码如下:
// 查询状态为1的用户数据 并且每页显示10条数据
list=Db::name(′user′)−>where(′status′,1)−>paginate(10);//把分页数据赋值给模板变量listthis->assign(‘list’,
list);//渲染模板输出returnthis->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手册地址
扫描二维码关注公众号,回复:
3968052 查看本文章
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’] = KaTeX parse error: Expected 'EOF', got '}' at position 5: key;}̲this->assign(‘data’,
data);this->assign(‘page’,
page);//渲染模板输出returnthis->fetch();
模板文件中分页输出代码如下:
{volist name=‘data’ id=‘user’}
{$user.nickname}
{/volist}
{$page}