Laravel 5.2分页--怎么在一个页面实现两个以上的列表分页,互不影响?
今天就碰到这样的一个问题?想在一个页面里面放两个列表,并且两个列表都可以进行分页。
但是,laravel提供的分页方法很方便,可是两个以上就出问题了,当我点其中一个分页的链接时候,页面上其余的分页跟着切换。
这就是因为每个分页的都在同个页面,并且分页名都是用了默认的‘page’,导致了命名冲突。
在网上找了一个,找到了解决办法,就是自定义设置分页名称。
在Builder.php文件(项目名称/laravel/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php)里面有一个分页的方法paginate()。
/**
* Paginate the given query.
*
* @param int $perPage
* @param array $columns
* @param string $pageName
* @param int|null $page
* @return \Illuminate\Contracts\Pagination\LengthAwarePaginator
*
* @throws \InvalidArgumentException
*/
public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null)
{
$page = $page ?: Paginator::resolveCurrentPage($pageName); $perPage = $perPage ?: $this->model->getPerPage(); $query = $this->toBase(); $total = $query->getCountForPagination(); $results = $total ? $this->forPage($page, $perPage)->get($columns) : new Collection; return new LengthAwarePaginator($results, $total, $perPage, $page, [
'path' => Paginator::resolveCurrentPath(),
'pageName' => $pageName,
]);
}
看了一下它可以传4个参数的:
$perPage = null,
$columns = ['*'],
$pageName = 'page',
$page = null
在设置分页方法的时候传入自定分页变量名,格式为 paginate(3, ['*'], 'spage');这样问题就解决了,可以在同一个页面上实现多个分页。
但是,你以为ok了么?nonono...
新发现的问题是:当你点击其中一个分页链接的时候,它是实现了页面的跳转,但是,它没问题,其他的分页回跳回首页,也就是说地址栏的分页变量只有一个,你一点跳转,页面跳转,其他的分页就没了,默认为首页去了。
看了一下文档分页这块,里面有个添加参数到分页链接的appends方法。
比如:
->paginate(2, ['*'], 'fpage');
<div class="text-center"> {!! $first->appends(['spage' => $second>currentPage() ])->render() !!} </div> ->paginate(2, ['*'], 'fpage');
<div class="text-center"> {!! $second->appends(['fpage' => $first->currentPage() ])->render() !!} </div>
这样来个
1、分页first 、second分别自定分页命为:fpage 、spage;
2、
appends(['fpage' => $first->currentPage() ])、
appends(['spage' => $second>currentPage() ])
各自调用appends方法添加对方的分页变量名,设置值为其对方当前也页码数
3、获取当前页面数的currentPage()方法是跳用分页方法后,获取结果集合后,调用就它就可以获取当前页码数的
最后就成功啦!!!
URL: http://localhost:8000/admin?spage=2&fpage=8
可以不互相影响到了。
Laravel 5.2分页--怎么在一个页面实现两个以上的列表分页,互不影响?的更多相关文章
- 如何在一个页面上让多个jQuery
如何在一个页面上让多个jQuery共存呢?比如jquery-1.5和jquery-1.11. 你可能会问,为什么需要在一个页面上让多个jQuery共存?直接引用最新版本的jQuery不行吗? 答案是, ...
- 基于bshare分享平台,在一个页面上实现多个不同内容的web分享
<!--引入bshare SDK--><script type="text/javascript" charset="utf-8" src=& ...
- VIPS:基于视觉的页面分割算法[微软下一代搜索引擎核心分页算法]
VIPS:基于视觉的页面分割算法[微软下一代搜索引擎核心分页算法] - tingya的专栏 - 博客频道 - CSDN.NET VIPS:基于视觉的页面分割算法[微软下一代搜索引擎核心分页算法] 分类 ...
- (转)WEB页面导出为Word文档后分页&横向打印的方法
<html> <HEAD> <title>WEB页面导出为Word文档后分页&横向打印的方法 </title> < ...
- laravel 框架配置404等异常页面的方法详解(代码示例)
本篇文章给大家带来的内容是关于laravel 框架配置404等异常页面的方法详解(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 在Laravel中所有的异常都由Handl ...
- 怎样在一个页面使多个setInterval函数正常执行
var firstInterval; var secondInterval; function firstAlert(){ if(firstInterval) clearInterval(firstI ...
- 基于Metronic的Bootstrap开发框架经验总结(2)--列表分页处理和插件JSTree的使用
在上篇<基于Metronic的Bootstrap开发框架经验总结(1)-框架总览及菜单模块的处理>介绍了Bootstrap开发框架的一些基础性概括,包括总体界面效果,以及布局.菜单等内容, ...
- PHP+jQuery 列表分页类 ( 支持 url 分页 / ajax 分页 )
/* ******* 环境:Apache2.2.8 ( 2.2.17 ) + PHP5.2.6 ( 5.3.3 ) + MySQL5.0.51b ( 5.5.8 ) + jQuery-1.8.3.mi ...
- 织梦DeDeCms列表分页和内容页分页错位解决办法
文章页分页代码在这里/include/arc.archives.class.php列表页分页/include/arc.listview.class.php 很多入门的站长会碰到这样的问题,织梦的通病, ...
随机推荐
- Asp.net+WebSocket+Emgucv实时人脸识别
上个月在网上看到一个用web实现简单AR效果的文章,然后自己一路折腾,最后折腾出来一个 Asp.net+WebSocket+Emgucv实时人脸识别的东西,网上也有不少相关资料,有用winform的也 ...
- [Android] Android读取Asset下文件的最简单的方法总结(用于MediaPlayer中)
方法一:getAssets().openFd //读取asset内容 private void openAssetMusic(String index) throws IOException { ...
- js 对象及空对象或数组及空数组的判断与比较
工作中经常会使用到,这里记录一下 判断是不是对象: let obj = {}; Object.prototype.toString.call(obj) == "[object Object] ...
- termios结构体的内容
一.结构体成员 struct termios { tcflag_t c_iflag; tcflag_t c_oflag; tcflag_t c_cflag; tcflag_t c_lflag; cc_ ...
- 五、文件IO——dup 函数
5.1 dup 函数---复制文件描述符 5.1.1 简单cat实现及输入输出重定向 io.c #include <sys/types.h> #include <sys/stat.h ...
- ASP.NET MVC动态加载数据
ASP.NET MVC动态加载数据,一般的做法是使用$.each方法来循环产生tabel: 你可以在html时先写下非动态的部分: Source Code 上图中,有一行代码: <tbody ...
- 利用PHP连接数据库操作用户注册、审核与登录页面
注册页面 <body ><h1>注册页面</h1><form action="zhucechuli.php" method="p ...
- [C++]2-3 倒三角形
/* 倒三角形(Triangle) 输入正整数n<=20,输出一个n层的倒等腰三角形. 0 ######### 9 = 2* n-1 1 ####### 7 = 2*(n-1)-1 2 #### ...
- 状压DP初探·总结
2018过农历新年这几天,学了一下状态压缩动态规划,现在先总结一下. 状态压缩其实是一种并没有改变dp本质的优化方法,阶段还是要照分,状态还是老样子,决策依旧要做,转移方程还是得列,最优还是最优, ...
- spring cloud(学习笔记) Enreka服务治理
服务治理是微服务架构最为核心和基础的模块,主要用来实现各个微服务实例的自动化注册和发现. 记录一下服务注册中心的搭建以及高可用注册中心的实现 1.首先创建两个基础 的spring boot工程,spr ...