Yii2的Gridview应用技巧补充
Yii2框架下的Gridview通常用来展示一张DB表中的数据,十分方便。这里只说一下经常要用到的一些小技巧,其实大多数官方文档都是有的,只是有可能需要在多个文档里。
自动创建的gridview示例。

1. 不显示Gridview自带的记录序列。
删除视图文件里下面这一行代码。
['class' => 'yii\grid\SerialColumn']
2.字段名称居中对齐
视图里自定义headerOptions。
"headerOptions" => ['style' => 'text-align:center;'],
3.字段值居中对齐
视图里自定义contentOptions。
"contentOptions" => ['style' => 'text-align:center;'],
4.字段不允许点击排序
视图里自定义enableSorting。
'enableSorting' => false,
5.字段不允许搜索
Search模型里rules return值去除对应值。例如去掉分类ID以及优先级两个字段的搜索功能。
class MaterialscatSearch extends Materialscat
{
/**
* @inheritdoc
*/
public function rules()
{
return [
//[['cat_id', 'status', 's'], 'integer'],
[['status'], 'integer'],
[['cat_name'], 'safe'],
];
}
6.状态栏目显示对应值的中文含义
数据库里存放的是0和1,0代表禁用,1代表启用。
数据模型添加中文状态的静态数组和取值方法
class Materialscat extends \yii\db\ActiveRecord
{
public static $allStatus = [
'0' => '禁用',
'1' => '启用'
];
...
public function getStatusStr()
{
return Yii::t('app',self::$allStatus[$this->status]);
}
然后在视图里自定义value。
[
'attribute' =>'status',
'enableSorting' => false,
'value' => 'StatusStr', //$model->StatusStr = $model->getStatusStr();
"headerOptions" => ['style' => 'text-align:center;width:10%;'],
"contentOptions" => ['style' => 'text-align:center;'],
],
7.状态栏搜索变成下拉搜索样式,并且默认选中项提示为‘全部’
视图自定义filter以及filterInputOptions。
[
'attribute' =>'status',
'enableSorting' => false,
'value' => 'StatusStr',
'filter' => Materialscat::$allStatus,
'filterInputOptions' => ['class' => 'form-control', 'id' => null, 'prompt' => '全部'],
"headerOptions" => ['style' => 'text-align:center;width:10%;'],
"contentOptions" => ['style' => 'text-align:center;'],
],
最终界面如下:

Yii2的Gridview应用技巧补充的更多相关文章
- ASP.NET中Gridview一些技巧
ASP.NET中Gridview一些技巧 一.后台覆盖掉Gridview中自动填充的值 我们可以再Gridview中的事件触发的过程中修改其中的值,而这些值将会在具体的运行过程中覆盖掉那些自动属性.这 ...
- 关于yii2的gridview关联搜索步骤
在使用yii2构建搜索视图,经常都会使用到gridview这个组件,这个组件十分强大,通过一定的配置就能进行关联搜索,下面就是简单的步骤 需求场景:一个车系表,里面存放在品牌表的id,现在要用品牌名字 ...
- Yii2中GridView
Yii2 GridView与dropdownList结合的用法 http://www.yiichina.com/tutorial/473 <?=$form->field($model, ' ...
- yii2使用小知识(连续补充)
1,打印ar或者query的原始sql: $query = (new \yii\db\Query())->select(['a.username','b.item_name'])->fro ...
- Yii2.0 GridView 新增添加按钮
<?= GridView::widget([ 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'col ...
- yii2的GridView和ActiveDataProvider具体使用
1.控制器中(以User模块的列表为例): 第一步: use backend\models\User;use yii\data\ActiveDataProvider; 第二步: public func ...
- DevExpress GridView使用技巧之列标题点击事件
在这里使用GridView的MouseDown事件.这里同样使用的是GridHitInfo来获取点击位置的信息,来判断是否在列标题上.GridHitInfo根据鼠标点击的x.y坐标获取该点的相关信息, ...
- yii2之GridView小部件
GridView小部件用于展示多条数据的列表.GridView小部件的使用需要数据提供器即yii\data\ActiveDataProvider的实例作为参数,所以 第一步就是要在控制器方法中创建这个 ...
- Yii2框架GridView自带导出功能最佳实践
1. 导出excel的实现方法 (1)使用phpexcel封装工具类导出excel (2)使用爬虫爬取页面再处理封装工具类导出excel (3)使用页面渲染后处理html添加头部信息生成excel文件 ...
随机推荐
- Android--解决图片保存到相册显示1970年1月1日 8:00的问题
import android.content.Context; import android.content.Intent; import android.database.Cursor; impor ...
- SQLServer数据库维护(一)碎片检查整理
一.碎片查看维护 dbcc showcontig('表名') dbcc showcontig ('T_NOFITSTUDY') 结果如下: DBCC SHOWCONTIG 正在扫描 'T_NOFITS ...
- [20190401]隐含参数_mutex_spin_count.txt
[20190401]隐含参数_mutex_spin_count.txt --//上午做了一些测试关于semtimedop函数调用,发现自己上个星期在一些问题上理解错误.--//相关链接:--//htt ...
- AngularJS学习之旅—AngularJS Table(十一)
1.AngularJS 表格 1. ng-repeat 指令可以完美的显示表格 AngularJS 实例 <!DOCTYPE html> <html> <head> ...
- python3 set(集合)
add(增加元素) name = set(['Tom','Lucy','Ben']) name.add('Juny') print(name) #输出:{'Lucy', 'Juny', 'Ben', ...
- Python爬虫之Beautiful Soup库的基本使用
- Bootstrap -- 插件: 模态框、滚动监听、标签页
Bootstrap -- 插件: 模态框.滚动监听.标签页 1. 模态框(Modal): 覆盖在父窗体上的子窗体. 使用模态框: <!DOCTYPE html> <html> ...
- docker容器日志收集方案(方案四,目前使用的方案)
先看数据流图,然后一一给大家解释 这个方案是将日志直接从应用代码中将日志输出到redis中(注意,是应用直接连接redis进行日志输出),redis充当一个缓存中间件有一定的缓存能力,不过有限,因 ...
- 超哥笔记--linux准备知识(1)
一 岗位 前端小姐姐 python后端大神 测试工程师 测试+python 测试开发 运维工程师(背锅侠) -安全运维 -linux系统管理员 -桌面运维(helpdesk) -IDC机房运维(服务器 ...
- 爬虫系列二(数据清洗--->bs4解析数据)
一 BeautifulSoup解析 1 环境安装 - 需要将pip源设置为国内源,阿里源.豆瓣源.网易源等 - windows (1)打开文件资源管理器(文件夹地址栏中) (2)地址栏上面输入 %ap ...