本文实例为大家分享了yii2 gridview下拉列表筛选数据的具体代码,供大家参考,具体内容如下
view:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
'columns' => [ [ 'class' => 'yii\grid\serialcolumn' ], 'id' , [ 'attribute' => 'category_id' , 'label' => '类型' , 'value' => function ( $model ){ return $model ->getcategoryname(); //值 }, 'filter' => $model ->getcategorylist(), //筛选的数据 ], ] |
model:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
/** * 分类列表 * @return array */ public function getcategorylist(){ $result = []; $list = category::find()->where([ "status" => category::status_normal])->asarray()->all(); if (! empty ( $list )){ $result = arrayhelper::map( $list , "id" , "category_name" ); } return $result ; } /** * 关联分类表 * @return \yii\db\activequery */ public function getcategory(){ return $this ->hasone(category::classname(),[ "id" => "category_id" ]); } /** * 分类名称 * @return string */ public function getcategoryname(){ return empty ( $this ->category)? "" : $this ->category->category_name; } |
效果:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。