首頁  >  文章  >  後端開發  >  PHP開發框架Yii Framework教學(30) Zii元件-ListView範例

PHP開發框架Yii Framework教學(30) Zii元件-ListView範例

黄舟
黄舟原創
2017-01-22 09:40:351183瀏覽

CListView可以用來顯示列表,CListView支援使用自訂的View範本顯示列表的記錄,因此可以非常靈活的顯示資料的表 ,這點有點像Android的ListView:-)。

CListView 支援分頁和排序,分頁和排序支援使用AJAX實作從而可以提高頁面 的回應效能。 CListView的使用需要透過DataProvider,通常是使用CActiveDataProvider。

本例修改Yii Framework 開 發教學(26) 資料庫-Active Record範例,不過為了顯示分頁,我們使用Customer資料庫表,每頁顯示10筆記錄。

修改缺 省的視圖protected/views/site/index.php,使用ListView元件。

widget
('zii.widgets.CListView', array('dataProvider'=>$dataProvider,'ajaxUpdate'=>false,
'template'=>'{sorter}{pager}{summary}{items}{pager}',
'itemView'=>'_view','pager'=>array('maxButtonCount'=>'7',),
'sortableAttributes'=>array('FirstName','LastName','Country',),)); ?>

參數template 設定頁面顯示的模板,支援的參數有 {summary}, {sorter}, {items} 和{pager},分別對應 於ListView的匯總,排序,列表項,分頁控制。

參數itemView 指明每個列表項對應的View顯示。本範例使用site/_view.php ,定義如下:

FirstName . ' ' . $data->LastName);?>
getAttributeLabel('Company')); ?>
:Company); ?>
getAttributeLabel('Address')); 
?>:format->formatUrl($data->Address); ?>
getAttributeLabel('Country')); ?>:Country); ?>
getAttributeLabel('Email')); ?>:
format->formatEmail($data->Email); ?>

 接著修改SiteController的indexAction方法:

public function actionIndex()
{
$dataProvider=new CActiveDataProvider('Customer', array(
'pagination'=>array(
'pageSize'=>10,
'pageVar'=>'page',
),
'sort'=>array(
'defaultOrder'=>'Lastname',
),
));
$this->render('index',array(
'dataProvider'=>$dataProvider,
));
}

顯示結果如下:

PHP開發框架Yii Framework教學(30) Zii元件-ListView範例

View

就是PHPListP開發框架範例的內容,更多相關內容請關注PHP中文網(www.php.cn)!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn