采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师你好,根据你上课讲的内容,做分页的时候显示一级列表都没有问题,当点击获取子工具栏,显示第一页是没有问题的,当接着点击子分页的第二页,就发现返回的数据是一级分类的第二页,我初步看看可能是parent_id传入的是0造成的,怎么解决这问题呢?
方法如下这样使用,这个再后面有单独的讲解。祝你学习愉快
/** * 通用的分页样式 * @param $obj */ function pagination($obj) { if(!$obj) { return ''; } // 优化的方案 $params = request()->param(); return '<div class="cl pd-5 bg-1 bk-gray mt-20 tp5-o2o">'.$obj->appends($params)->render().'</div>'; }
您好,后面有讲解
您parent_id参数是否传递正确
老师你好 我是根据的视频一点一点看的,也没有发现你在点击页码的时候传递parent_id呀,我觉得老师您的代码也会存在这个的问题的,当我们点击页码的时候,发现tp5自动的将页码值传递过去了,如果是一级分类是没有问题的,因为parent_id默认值就是0吗,当我们进入获取子栏目二级分类列表的时候,点击第二页,发现tp5传入的page=2是没有问题,关键是我们还是少个参数parent_id,想问下老师当点击页码的时候如何传入parent_id呢,如何拿到tp5提供的分页传入参数呢?要不然怎么传参数呢
搞了1个小时,终于解决了
主要是因为你在二级分类列表中,分页按钮URL没有带你子分类ID参数,所以每次当你要跳转下一页的时候,执行了$parent_id = input('get.parent_id', 0, 'intval');,这个时候parent_id又等于0了,所以又变成了一级分类
更改category model里的分页方法
return $this->where($data)->order($order)->paginate(2, false, ['query' => ['parent_id' => $parent_id]]);
这样你就会发现你render()出来的url就会带上parent_id了
谢谢你!知道了
老师你好
我是根据的视频一点一点看的,也没有发现你在点击页码的时候传递parent_id呀,我觉得老师您的代码也会存在这个的问题的,当我们点击页码的时候,发现tp5自动的将页码值传递过去了,如果是一级分类是没有问题的,因为parent_id默认值就是0吗,当我们进入获取子栏目二级分类列表的时候,点击第二页,发现tp5传入的page=2是没有问题,关键是我们还是少个参数parent_id,想问下老师当点击页码的时候如何传入parent_id呢,如何拿到tp5提供的分页传入参数呢?要不然怎么传参数呢
登录后可查看更多问答,登录/注册
【毕设】BAT大牛亲授ThinkPHP 5.0,实战中学透新技能,应用于工作
2.0k 3
6.1k 20
2.0k 15
1.4k 13