摘要:的分頁組件默認(rèn)為的分頁樣式,但如果我們用的并不是或者說分頁的結(jié)構(gòu)不一樣,這時(shí)我們需要自定義分頁。進(jìn)一步,可以看到通過繼承并對(duì)方法進(jìn)行重寫,由此可見,我們可以通過繼承類并對(duì)方法進(jìn)行重寫,就可以自定義分頁的樣式了。
????????Laravel 的分頁組件默認(rèn)為 Bootstrap 的分頁樣式,但如果我們用的并不是 Bootstrap 或者說分頁的 HTML結(jié)構(gòu)不一樣,這時(shí)我們需要自定義分頁。其實(shí) Laravel 的分頁組件是非常的靈活,可以通過幾種方法去實(shí)現(xiàn)我們的需求。
????????我們可以從 Model 抽象類看到通過使用 IlluminateDatabaseQueryBuilder 可以查找出paginate 、simplePaginate的實(shí)現(xiàn)。然后直接查看 IlluminatePaginationBootstrapThreePaginater 可以查找到 render 方法。這方法就是輸出 分頁組件 默認(rèn)的 html。
????????進(jìn)一步,可以看到simplePaginate 通過 IlluminatePaginationSimpleBootstrapThreePaginater 繼承 IlluminatePaginationBootstrapThreePaginater 并對(duì) render 方法進(jìn)行重寫,由此可見,我們可以通過繼承 BootstrapThreePaginater 類并對(duì) render 方法進(jìn)行重寫,就可以自定義分頁的樣式了。
方法一:通過繼承 通過替換默認(rèn)的生成類來修改分頁的自定義樣式:替換 laravel 分頁組件默認(rèn)生成的模板 出自 Inspirer(https://www.insp.top)。第一步該方法主要通過利用 Laravel 提供的方法來實(shí)現(xiàn),主要用到 currentPage()、url( $page )、lastPage()。
在需要調(diào)用分頁的視圖中引入 分頁視圖 ($data 所指的是分頁數(shù)據(jù),將它傳去分頁視圖):
@include("pagination.default", ["paginator" => $data])
利用通過 第一步 傳遞過來的 $data , 如何去利用呢?
在 resources/views 目錄下創(chuàng)建 pagination 目錄,并創(chuàng)建一個(gè)視圖default.blade.php 。添加一下代碼:
- @for ($i = 1; $i <= $paginator->lastPage(); $i++)
- {{ $i }}
@endfor
$paginator->currentPage():獲取當(dāng)前頁
$paginator->lastPage():獲取尾頁
$paginator->url($page):獲取頁碼的URL
自定義分頁樣式,可以通過以上方法實(shí)現(xiàn),當(dāng)然個(gè)人建議還是用 方法一 吧,因?yàn)?b>方法二 跟寫原生沒什么區(qū)別。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/21718.html
摘要:版本以上的分頁比之前的更簡單和人性化首先獲取到數(shù)據(jù),方法能夠自動(dòng)判定當(dāng)前頁面正確的數(shù)量限制和偏移數(shù)。默認(rèn)情況下,當(dāng)前頁數(shù)由請(qǐng)求所帶的參數(shù)來決定。當(dāng)然,該值由自動(dòng)檢測(cè),并自動(dòng)插入由分頁器生成的鏈接。 laravel5.3版本以上的分頁比之前的更簡單和人性化 1.首先獲取到數(shù)據(jù),paginate方法 能夠自動(dòng)判定當(dāng)前頁面正確的數(shù)量限制和偏移數(shù)。默認(rèn)情況下,當(dāng)前頁數(shù)由HTTP 請(qǐng)求所帶的 ...
摘要:之分頁樣式替換增加首頁尾頁一自定義一個(gè)類代碼如下,位置隨你放,注意命名空間。自定義樣式添加首頁方法上一頁下一頁添加尾頁方法這里標(biāo)簽可以添加你自己的樣式新建首頁方法首頁新建尾頁方法尾頁 laravel之分頁樣式替換(增加首頁尾頁) 一、自定義一個(gè)類(代碼如下),位置隨你放,注意命名空間。二、模板輸出調(diào)用 {!! $data->render(new AppHttpControllersS...
摘要:創(chuàng)建重寫方法的類創(chuàng)建文件創(chuàng)建服務(wù)提供者自定義分頁將服務(wù)提供者添加到討論群歡迎加入實(shí)例源碼我的開源博客 需求介紹 laravel默認(rèn)了分頁,實(shí)現(xiàn)非常優(yōu)雅,但有時(shí)候會(huì)遇到修改默認(rèn)的樣式,比如我要將默認(rèn)的修改為 解決辦法切入點(diǎn) Laravel自帶的分頁鏈接樣式由IlluminatePaginationBootstrapThreePresenter的render方法生成,我們?cè)诖朔椒ㄉ献鑫恼录?..
摘要:文檔告訴我們對(duì)應(yīng)于查詢語句構(gòu)造器和的方法,而則等同于方法。那我們還是來看下源碼,具體這個(gè)是如何實(shí)現(xiàn)的中傳入的是一個(gè)的實(shí)例,并調(diào)用這個(gè)實(shí)例化的方法來實(shí)現(xiàn)分頁的顯示的。首先就來簡單的實(shí)現(xiàn)一個(gè),顯示出來上一頁和下一頁,中間是分頁數(shù)字的例子。 本文最早發(fā)表于本人博客: Laravel5.1+ 分頁P(yáng)agination解析以及擴(kuò)展 Laravel 的分頁很方便,其實(shí)擴(kuò)展起來也挺容易的,下面就來做...
摘要:最近再拿寫博客系統(tǒng),里面需要分頁,想自定義,于是百度了一圈,都是什么修改之類的,這樣治標(biāo)不治本嘛,于是查看手冊(cè),發(fā)現(xiàn)如下如果您想要指定自定義的視圖來使用分頁,您可以使用方法然后就沒了,得了,還是自己看代碼吧,追蹤代碼思路如下找到方法,在第行 最近再拿 laravel 寫博客系統(tǒng),里面需要分頁,想自定義,于是百度了一圈,都是什么修改 css,之類的,這樣治標(biāo)不治本嘛,于是查看 larav...
閱讀 1213·2021-11-25 09:43
閱讀 1969·2021-11-11 10:58
閱讀 1187·2021-11-08 13:18
閱讀 2659·2019-08-29 16:25
閱讀 3509·2019-08-29 12:51
閱讀 3307·2019-08-29 12:30
閱讀 748·2019-08-26 13:24
閱讀 3683·2019-08-26 10:38