首页 > laravel5 一个页面中有两个列表,如何分开分页

laravel5 一个页面中有两个列表,如何分开分页

在一个页面有两个列表,在render中可以添加参数,但是分页是自动完成的,如何按参数进行对应的分页呢,求解,谢谢


我也遇到了你这个问题,于是乎就在vender文件夹中找Illuminate\Pagination\Paginator目录下的Paginator.php,总之费劲周折,找到了$pageName这个变量在LengthAwarePaginator.php中已被setPageName()方法所改变,但是为何url改变内容却没有变化,这时在LengthAwarePaginator.php中会找到构造函数中options数组中存在pageName参数,这就令我向上找到Eloquent/Builder.php,这是不是很熟悉,不错!这就是开始调用的paginate()方法,例如User::paginate(2),注意这里只有一个参数,而Builder.php里面有4个参数,于是我改成User::paginate(2,['*'],'uPage');(第二个参数我就没管T_T),Whoops!怎么就搞定了!


大神 能不能借鉴一下你ajax分页的代码呀 膜拜ing


找到答案了,在laravel分页类中有一个方法setPageName(),可以自定义分页号的request名,比如默认是page=1,这种可以通过该方法将同一页面下的两个列表的分页分开,例如userList用upage=1,groupList用gpage=1,这样同页面多列表就不会互相干扰,but~~~~~~~~~然并卵,这个方法在L5.0里面有bug,‘page’这个值被hardcoded,所以你自定义什么都不会生效。
bug在这
GitHub Problem with custom pageName for Pagination #8000

可惜这个bug的修复并没有合并到L5.0而是合并到了L5.1,解决代码在这
GitHub 5.0 Use custom page name for Paginator #8475

然后我按照以上修复了我的代码,然而依旧然并卵,因为环境问题(PHP 5.4.39),没法升级L5.1,所以按楼上所说,乖乖的用Ajax分页去了,真是哔了狗了,若果有大家知道问题原因能告诉我十分感谢,想知道为什么不好用,谢谢了;


两个列表建议使用 ajax 分页

【热门文章】
【热门文章】