Laravel5.5创建分页模板

一、我们查询的时候使用的 paginate 方法,该分页函数在以下位置
项目根目录\vendor\laravel\framework\src\Illuminate\Database\Eloquent 下 Builder.php文件
在这里插入图片描述
模板中调用 render()方法在 LengthAwarePaginator.php文件中
项目根目录\vendor\laravel\framework\src\Illuminate\Pagination
在这里插入图片描述
这里采用的模板是 static::$defaultView 在AbstractPaginator.php文件中
项目根目录\vendor\laravel\framework\src\Illuminate\Pagination
在这里插入图片描述
分页模板位置在 default.blade.php文件, 位置如下
项目根目录\resources\views\vendor\pagination

二、如果需要创建一个分页模板,可在

  1. AbstractPaginator.php 文件增加 public static $homePageView = "pagination::home-page"; 名称可自定义
  2. LengthAwarePaginator.php 文件增加
	public function homeRender($view = null, $data = []){
        return new HtmlString(static::viewFactory()->make($view ?: static::$homePageView, array_merge($data, [
            'paginator' => $this,
            'elements' => $this->elements(),
        ]))->render());
    }

3.Builder.php文件增加

	public function homePaginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null){
        $page = $page ?: Paginator::resolveCurrentPage($pageName);

        $perPage = $perPage ?: $this->model->getPerPage();

        $results = ($total = $this->toBase()->getCountForPagination())
            ? $this->forPage($page, $perPage)->get($columns)
            : $this->model->newCollection();

        return $this->Paginator($results, $total, $perPage, $page, [
            'path' => Paginator::resolveCurrentPath(),
            'pageName' => $pageName,
        ]);
    }

4.数据查询使用 homePaginate()方法
5.前台模板调用为 homeRender();
6.分页模板创建
在这里插入图片描述

淘宝优惠券领取 http://tao.paetao.com

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值