當我們用自己的模型來獲取數據,並且需要進行分頁的時候
在UserModel模型中設置數據庫以及查詢數據庫中數據的數量
protected $tableName='user';
public function getAllUser($p){
$result=$this->limit($p->firstRow, $p->listRows)->select();
return $result;
}
在Application/Common/common/function.php中添加個分頁方法,這個方法可以在不同模塊中調用
function getpage($db, $pagesize = 10) {
$count= $db->count();
$page = new Think\Page($count, $pagesize);
$page->setConfig('header', '<li class="rows">共<b>%TOTAL_ROW%</b>條記錄 第<b>%NOW_PAGE%</b>頁/共<b>%TOTAL_PAGE%</b>頁</li>');
$page->setConfig('prev', '上一頁');
$page->setConfig('next', '下一頁');
$page->setConfig('last', '末頁');
$page->setConfig('first', '首頁');
$page->setConfig('theme', '%FIRST%%UP_PAGE%%LINK_PAGE%%DOWN_PAGE% %END%%HEADER%');
$page->lastSuffix = false;//最後一頁不顯示爲總頁數
return $page;
}
在控制器中的方法中進行模型的實例化以及方法的調用
public function show() {
$user =new \Home\Model\UserModel();
$page=getpage($user);
$list = $user->getAllUser($page);
$this->assign('select', $list); // 賦值數據集
$this->assign('page', $page->show()); // 賦值分頁輸出
$this->display();
}