laury laury - 4 months ago 28
PHP Question

yii2 dropdown in gridview widget filter

I want to make a closed dropdownlist values in the Gridview widget of YII2 framework. the code i have now:

<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [ //only fields name!
['class' => 'yii\grid\SerialColumn'],

'id',
'title',
'statusId',
'categoryId',
['class' => 'yii\grid\ActionColumn'],
],
]); ?>


and statudId should be one of 3 possible values. (1-open, 2-in progress, 3-closed)

Answer

Hi the answer is simple from what you think.

<?= GridView::widget([
        'dataProvider' => $dataProvider,
        'filterModel' => $searchModel,
        'columns' => [
            ['class' => 'yii\grid\SerialColumn'],

            'id',
            'title',
            [
                'attribute'=>'statusId',
                'filter'=>array("1"=>"open","2"=>"in progress","3"=>"closed")
            ],
            ['class' => 'yii\grid\ActionColumn'],
        ],
    ]); ?>

instead of statusId use

[
                'attribute'=>'statusId',
                'filter'=>array("1"=>"open","2"=>"in progress","3"=>"closed")
            ]