首页  >  文章  >  后端开发  >  PHP开发框架Yii Framework教程(30) Zii组件-ListView示例

PHP开发框架Yii Framework教程(30) Zii组件-ListView示例

黄舟
黄舟原创
2017-01-22 09:40:351137浏览

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,
));
}

显示结果如下:

678.jpg

以上就是PHP开发框架Yii Framework教程(30) Zii组件-ListView示例的内容,更多相关内容请关注PHP中文网(www.php.cn)!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn