Yii Framework 开发教程(32) Zii组件-GridView示例
来源:互联网 发布:willem dafoe 知乎 编辑:程序博客网 时间:2024/05/23 23:48
CGridView 以表格的形式显示数据,CGridView 也支持分页和排序,CGridView最基本的用法和ListView类型,也是通过设置 data provider,通常是CActiveDataProvider。
修改上个例子Yii Framework 开发教程(31) Zii组件-DetailView 示例,把ListView该为GridView:
<?php $this->widget('zii.widgets.grid.CGridView', array('dataProvider'=>$dataProvider,'ajaxUpdate'=>false,'template'=>'{pager}{summary}{items}{pager}',)); ?>
显示结果如下:
可以看到GridView缺省显示了所有的字段,并使用缺省的格式显示字段,如果需要控制字段显示和格式,可以通过配置 CGridView::columns属性来实现。GridView的每列为一个CGridColumn对象:
- CGridColumn为所有Grid 列表项的基类,表格的每例可以有一个表头,多个数据单元,和一个可选的表尾单元格。
- CButtonColumn 表示该单元格为一个或多个按钮,缺省显示三个按钮, “view”, “update” 和”delete”,可以通过设置 buttons 和 template来更改。
- CCheckBoxColumn 表示该单元格为Checkbox,支持只读,单选或多选,通过配置selectableRows来修改
- CDataColumn 表示该单元为数据或是表达式,通过配置name或value,前者表示数据模型的属性名称,后者代码一个PHP表达式。
- CLinkColumn 表示一个超链接,通过配置 label , url或 imageUrl来设置链接。
重新定义GridView的columns属性如下:
<?php $this->widget('zii.widgets.grid.CGridView', array('id'=>'person-grid','dataProvider'=>$dataProvider,'htmlOptions'=>array('style'=>'width:740px'),'pager'=>array('maxButtonCount'=>'7',),'columns'=>array(array('header'=>'Name','type'=>'raw','value'=>'CHtml::link($data->FirstName . " " . $data->LastName, $this->grid->controller->createUrl("view",array("CustomerId"=>$data->CustomerId)))',),'Company',array('class'=>'CLinkColumn','header'=>'Email','imageUrl'=>'images/email.png','labelExpression'=>'$data->Email','urlExpression'=>'"mailto://".$data->Email','htmlOptions'=>array('style'=>'text-align:center'),),array('class'=>'CButtonColumn','deleteConfirmation'=>'Are you sure to delete this item?',),),));?>
显示如下:
点击姓名可以显示DetailView。 ButtonColumn 的update,search,delete没有添加对应的view ,就留给你自己加上了。
本例下载
- Yii Framework 开发教程(32) Zii组件-GridView示例
- Yii Framework 开发教程(32) Zii组件-GridView示例
- Yii Framework 开发教程(29) Zii组件-Menu 示例
- Yii Framework 开发教程(30) Zii组件-ListView 示例
- Yii Framework 开发教程(31) Zii组件-DetailView 示例
- Yii Framework 开发教程(33) Zii组件-Accordion示例
- Yii Framework 开发教程(34) Zii组件-AutoComplete示例
- Yii Framework 开发教程(35) Zii组件-Button示例
- Yii Framework 开发教程(36) Zii组件-DatePicker示例
- Yii Framework 开发教程(37) Zii组件-Dialog示例
- Yii Framework 开发教程(38) Zii组件-ProgressBar示例
- Yii Framework 开发教程(39) Zii组件-Slider示例
- Yii Framework 开发教程(40) Zii组件-SliderInput示例
- Yii Framework 开发教程(41) Zii组件-Tabs示例
- Yii Framework 开发教程(42) Zii组件-Draggable示例
- Yii Framework 开发教程(43) Zii组件-Droppable示例
- Yii Framework 开发教程(44) Zii组件-Resizable示例
- Yii Framework 开发教程(45) Zii组件-Selectable示例
- 学习struts2拦截器非常好的一个例子(转载)
- VS2010中配置CUDA5.0
- Win7 Ubuntu12.10双系统问题,及解决的心酸历程,分享给大家,给大家指一条救亡之道
- The Sociolinguistic Variable
- mysql 文本和日期处理
- Yii Framework 开发教程(32) Zii组件-GridView示例
- Struts2中Session的使用
- Java 单例模式详解
- W3150A+评估板--EVB-PIC24用户手册(四)硬件设计指南
- 各种音视频编解码学习详解--基本概念
- Yii Framework 开发教程(33) Zii组件-Accordion示例
- jsp实现ie中的后退
- 各种音视频编解码学习详解(2)--codec类型
- Effective C++ 学习笔记(三)