TP5分頁類使用——超級簡單好用

本文目錄:ajax

  1. 首先知道最原始的分頁如何實現。
  2. TP分頁類至關簡單。
  3. 模板中經常使用

 

首先知道最原始的分頁如何實現。

頁面傳進來一個p表示當前請求的頁碼,控制器接受到參數,組裝到sql中,而且配置page的配置信息,例如,每頁顯示多少數據,而後利用sql先查出總個數,而後利用分頁關係組裝sql,查出來以後的獲得對應的數據,接下來開始解析分頁按鈕等信息的渲染。通過漫長複雜的處理才能夠完成一個分頁的使用。sql

TP分頁類至關簡單。

其中將獲取當前頁碼自動化獲取,根據model自動組裝sql,結合render渲染出須要的分頁按鈕。至關簡單。bootstrap

具體說下,app

 1 public function getlist()
 2 {
 3 $cartoon_where = ['block_sta' => 3,  'is_on_show' => 1];
 4 $orderBy = ['hot_num' => 'desc'];
 5 $hot_cartoons = Model('cartoon')
 6     ->field('id,title,thumb,author,last_chapt,last_chapt_num,tags,serial_sta')
 7     ->where($cartoon_where)
 8     ->order($orderBy)
 9     ->paginate(5, false, ['var_page'=>'p']);
10 return $hot_cartoons;
11 }

只須要在model中使用一個  ,配置url中表示頁碼的字符,這裏用p,其實默認的是 'page'  .若是使用了page也能夠任何東西都不用配置post

paginate(5, false, ['var_page'=>'p']);

 

全部獲取頁碼,組裝sql,查詢總數等都是 類完成,但要注意調用的是model,並且返回的是一個bootstrap對象,可是這個data數據能夠直接使用。
簡直不能更爽~url

 

例子詳情參見:
控制器:spa

app\mobile\controller\rank    ->book_hot()    和   ->ajax_ranking_info_book()

 

注意:
這個分頁參數必須是get方式傳遞過來的。post的方式不支持code

 

模板中經常使用

{if($books->isEmpty())}
//是否爲空的判斷

{$books->currentPage()}
//當前頁碼的獲取

{$books->lastPage()}
//最後一頁頁碼的獲取
相關文章
相關標籤/搜索