yii2数据列表插件-gridview [基础教程] [ 2.0 版本 ]
gridview插件被应用于数据呈现,它提供了很多功能,如浏览、排序、分页和数据过滤。
下面是一个简单的gridview应用实例
<?= GridView::widget([
'dataProvider' => $dataProvider,
'columns' => [
'id',
'name',
'created_at:datetime',
// ...
],
]) ?>
应用场景
对于gridview的一些详细用法,请看以下总结:
1.在例头添加排序,在cloumns中加入以下代码
['class' => 'yii\grid\SerialColumn']
2.列表勾选框,在cloumns中加入以下代码
['class' => 'yii\grid\CheckboxColumn'],
3.列数据快速格式化:时间戳转化为时间格式显示
'created_at:datetime',
4.显示关联表数据:前提是在model中有关联关系,例如:getAuthor()
'author.name', //获取关联表author的name的值
5.列表中显示图片:显示一张50*100的图片,label_img为图片地址
'label_img'=>[
'label' => '标签图',
'format' => [
'image',
[
'height' =>50,
'width' => 100
]
],
'value' => function($model){
return $model->label_img;
}
],
6.显示状态,且带过滤
[
'attribute' => 'is_valid',
'label' => '发布状态',
'value' => function($model) {
return $model->is_valid == 0 ? '未发布' : '发布';
},
'filter' => [
0 => '未发布',
1 => '发布'
]
],
7.显示带html标签的例值:正常情况下是过滤html标签的
[
'attribute' => 'content',
'format' => 'raw',
'value' => function ($model) {
return $model->content;
},
],
8.自定义按钮:{view} {update} {delete} 为默认,可以不填显示默认,也可以覆盖重新定义
[
'class' => 'yii\grid\ActionColumn',
'template' => '{test} {view} {update} {delete}',
'header' => '操作',
'buttons' => [
'test' => function ($url, $model, $key) {
return Html::a('测试按钮', $url,['data-method' => 'post','data-pjax'=>'0'] );
},
'delete'=> function ($url, $model, $key){
return Html::a('删除', ['delete', 'id'=>$model->id],[
'data-method'=>'post', //POST传值
'data-confirm' => '确定删除该项?', //添加确认框
] ) ;
}
],
],
以上为gridview的一些基本操作,当然还有很多其他情景,但要活学活用,举一反三
teamoping
注册时间:2014-05-10
最后登录:2018-12-04
在线时长:15小时45分
最后登录:2018-12-04
在线时长:15小时45分
- 粉丝9
- 金钱845
- 威望80
- 积分1795
热门源码
- 整合完 yii2-rbac+yii2-admin+adminlte 等库的基础开发后台源码
- 适合初学者学习的一款通用的管理后台
- 基于 Yii 2 + Bootstrap 3 搭建一套后台管理系统 CMF
- yii-goaop - 将 goaop 集成到 Yii,在 Yii 中优雅的面向切面编程
- yii-log-target - 监控系统异常且多渠道发送异常信息通知
- 店滴云1.3.0
- 面向对象的一小步:添加 ActiveRecord 的 Scope 功能
- Yii2 开源商城 FecShop
- 基于 Yii2 开发的多店铺商城系统,免费开源 + 适合二开
- leadshop - 基于 Yii2 开发的一款免费开源且支持商业使用的商城管理系统
共 1 条评论
很实用。。。。
如果再附上效果截图就更nice。。。。。。。。。。。。。