Laravel5.2 手动分页以及自定义样式
来源:互联网 发布:sql中select语句 编辑:程序博客网 时间:2024/05/22 04:35
#vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:480
return new LengthAwarePaginator($this->get($columns), $total, $perPage, $page, [ 'path' => Paginator::resolveCurrentPath(), 'pageName' => $pageName, ]);
可以发现了分页的源码了 拿出来直接使用use Illuminate\Pagination\LengthAwarePaginator;use Illuminate\Pagination\Paginator;use Illuminate\Http\Request;//演示分页 //输出分页{{ $paginator->render() }}function userList(Request $request) {$users = [['username'=>'zhangsan', 'age'=>26],['username'=>'lisi', 'age'=>23],['username'=>'wangwu', 'age'=>62],['username'=>'zhaoliu', 'age'=>46],['username'=>'wangmazi', 'age'=>25],['username'=>'lanzi', 'age'=>24],['username'=>'pangzi', 'age'=>21]];$perPage = 3;if ($request->has('page')) {$current_page = $request->input('page');$current_page = $current_page <= 0 ? 1 :$current_page;} else {$current_page = 1;}$item = array_slice($users, ($current_page-1)*$perPage, $perPage); //按分页取数据$total = count($users);//也可以这样//$paginator=new LengthAwarePaginator($item, $total, $perPage); // $paginator=$paginator->setPath(route('admin.wxmenu.index'));$paginator =new LengthAwarePaginator($item, $total, $perPage, $current_page, ['path' => Paginator::resolveCurrentPath(), //设定个要分页的url地址。也可以手动通过 $paginator ->setPath(‘路径’) 设置'pageName' => 'page',]);$userlist = $paginator->toArray()['data'];return view('lawyer.index', compact('userlist', 'paginator'));}
2.很多时候需要自定义html。简单的查看下源码发现:
if (is_null($presenter) && static::$presenterResolver) { $presenter = call_user_func(static::$presenterResolver, $this); }
那么我们就可以自定义一个 boolawuiThreePresenter 类,继承自BootstrapThreePresenter。就可以自定义样式了
<?phpnamespace App\Http\Controllers\Common;class boolawuiThreePresenter extends \Illuminate\Pagination\BootstrapThreePresenter{ public function render() { if ($this->hasPages()) { return sprintf( '<ul class="am-pagination am-pagination-centered">%s %s %s</ul>', $this->getPreviousButton(), $this->getLinks(), $this->getNextButton() ); } return ''; } /** * Get HTML wrapper for disabled text. * * @param string $text * * @return string */ protected function getDisabledTextWrapper($text) { return '<li class="am-disabled"><span>'.$text.'</span></li>'; } /** * Get HTML wrapper for active text. * * @param string $text * * @return string */ protected function getActivePageWrapper($text) { return '<li class="am-active"><span>'.$text.'</span></li>'; }}
然后使用的时候只需要传入这个类就行了
{!! $paginator
->render(new App\Http\Controllers\Common\boolawuiThreePresenter($paginator)) !!}->appends(['sort' => 'votes'])//传参数
0 0
- Laravel5.2 手动分页以及自定义样式
- Laravel5.4手动创建分页
- laravel5.1 框架 自定义分页
- laravel5.2 分页
- laravel5.2 分页
- GridView分页的实现以及自定义分页样式功能实例
- Thinkphp3.2分页自定义样式
- ssh 分页以及 分页样式
- GridView自定义分页样式
- UltraWebGrid自定义分页样式
- GridView自定义分页样式
- GridView自定义分页样式
- dede分页自定义样式
- phpcms自定义分页样式
- phpcmsV9 自定义分页样式
- Laravel自定义分页样式
- Laravel自定义分页样式
- dede自定义分页样式
- PL/SQL函数的传入参数名称要规范,不能和函数内使用到的表的字段名称一样,否则会出错(带例子)
- Gradle使用Maven仓库
- mysql-for-visualstudio
- 自定义Volley的GsonRequest使用
- 小码哥杯java程序比赛复习(七)异常与断言(中)
- Laravel5.2 手动分页以及自定义样式
- linux基本操作
- ELK大规模日志实时处理系统应用简介
- 二叉树中序遍历的迭代实现
- 矩阵快速幂hdu3306Another kind of Fibonacci
- sublime Text 3实用功能和常用快捷键收集
- 大前端必备网站-超全
- Java数据结构——线性表归并
- 小议安卓定位伪造 - 实战足不出户畅玩 pokemon go