Yii2.0小部件GridView(数据展示)①

GridView

数据网格或者说 GridView 小部件是Yii中最强大的部件之一。如果你需要快速建立系统的管理后台, GridView 非常有用。它从数据提供者 data provider 中取得数据并使用 yii\grid\GridView::columns 属性的一组列配置,在一个表格中渲染每一行数据。表中的每一行代表一个数据项的数据,并且一列通常表示该项的属性(某些列可以对应于属性或静态文本的复杂表达式)。

使用GridView操作实例鄙视

⒈后台控制器[查询]


   
    CompanyInfo::find(),
		    'pagination' => [
		        'pageSize' => 8,
		    ],
		]);
		//查询数据
		return $this->render('list',['data'=>$infoList]);
	}
}

2.前台视图[展示]


    
    title = '公司列表';
?>

    
    

    
    

    
     $data,	//数据源($data为后台查询的数据)
	//设计显示的字段(说明:此数组为空,默认显示所有数据库查询出来的字段)
	'columns' => [	
        ['attribute' => 'company_name'],	//公司名称
        ['attribute' => 'company_label'],  	//公司标签
        [
        	'attribute' => '审核状态', 	//设置属性显示名称
			'value'=>function ($model,$key,$index,$column){
					// 判断不同值显示不同状态
					// [三元换算符]调取数据库status字段列数据判断
					return $model->status==1?'已审核':'未审核'; 
				},
		],
        // 自定义动作列
        [
			'class' => 'yii\grid\ActionColumn',
			//动作列参数 info-update、delete都代表方法
			//这里的控制器是Company,两个参数分别访问的是company/info-update、company/delete方法
			'template' => '{info-update}{delete}',  
			'header' => '操作',
			'buttons' => [
				// 指定每个方法页面显示(可以使图片/任意字)
				'info-update' => function ($url, $model, $key) { 
					return Html::a('修改审核状态 ', $url, ['title' => '修改审核状态'] ); 
				},
				'delete' => function ($url, $model, $key) { 
					return Html::a('  删除', $url, ['title' => '删除'] ); 
				},
			],
			'headerOptions' => ['width' => '200'], //设置表格属性(例如:宽度)
		],
	],
]);
?>
[说明]注意引入对应的类
<?php 
use yii\grid\GridView;  //引入数据小插件类
use yii\data\ActiveDataProvider;   //引入数据源类
use yii\grid\ActionColumn; //引入列显示类
use yii\helpers\Html;	//引入辅助表单类
?>



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要给Yii2-GridView中的自定义字段增加排序功能,可以通过以下步骤实现: 1. 在GridView的columns属性中,为自定义字段添加‘attribute’属性(指定排序用的字段),‘label’属性(指定在表头显示的名称),以及‘value’属性(指定自定义字段的值)。 2. 在GridView的dataProvider属性中,为排序用的字段添加一个Sort属性。 3. 在GridView中的排序链接中,为自定义字段添加一个sort参数,指定排序用的字段。 以下是一个示例代码: ``` use yii\grid\GridView; use yii\data\ActiveDataProvider; use yii\data\Sort; $dataProvider = new ActiveDataProvider([ 'query' => $query, 'sort' => [ 'attributes' => [ 'custom_field' => [ 'asc' => ['custom_field' => SORT_ASC], 'desc' => ['custom_field' => SORT_DESC], 'label' => 'Custom Field', ], ], ], ]); echo GridView::widget([ 'dataProvider' => $dataProvider, 'columns' => [ 'id', 'name', [ 'attribute' => 'custom_field', 'label' => 'Custom Field', 'value' => function ($model) { return $model->customField; } ], ], 'sorter' => [ 'attributes' => [ 'custom_field' => [ 'asc' => ['custom_field' => SORT_ASC], 'desc' => ['custom_field' => SORT_DESC], ], ], ], ]); ``` 在以上代码中,我们为自定义字段‘custom_field’添加了一个Sort属性,然后在GridView中为该字段添加了‘attribute’、‘label’和‘value’属性。最后,在排序链接中为自定义字段添加了‘sort’参数,指定排序用的字段。这样就可以为Yii2-GridView中的自定义字段增加排序功能了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

红尘炼炼心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值