本文以實例代碼簡述了yii實現分頁的方法,供學習yii的朋友參考,具體代碼如下:
1.控制器部分代碼:
public function actionTest() { $criteria=new CDbCriteria; $criteria->order='id DESC'; $count=User::model()->count($criteria); $pager=new CPagination($count); $pager->pageSize=10; $pager->applyLimit($criteria); $userList=User::model()->findAll($criteria); $this->render('test',array('list'=>$userList,'pages'=>$pager)); }
2.視圖部分代碼:
<?php foreach($list as $o) { echo $o->username.'<br/>'; echo $o->id.'<br/>'; } $this->widget('CLinkPager',array( 'header'=>'', 'firstPageLabel' => '首頁', 'lastPageLabel' => '末頁', 'prevPageLabel' => '上一頁', 'nextPageLabel' => '下一頁', 'pages' => $pages, 'maxButtonCount'=>13 ) ); ?>
sql用limit和offset。分頁用$pages = new CPagination ();
你可以先看下基礎的教程,嘗試使用AR模型,這樣子的話,你可以先建一個posts表,存儲發布信息的公共部分,這樣所有資源可以在一個基礎模型裡,利用gii可以生成模型和CURD所有代碼,然後再根據posts裡設置一個資源類型,利用id關聯到不同的資源表,至於標簽,可另設一個表,關聯過去即可。