更改gridview列yii2中的值

更改gridview列yii2中的值,yii2,Yii2,我有这个想法 'columns' => [ ['class' => 'yii\grid\SerialColumn'], [ 'attribute' => 'order_delivery_address_city', 'value' => 'address.order_delivery_address_city' ], 显示类似“1”或“2”或“3”的字段。。。怎么改成这样 if (address.order_del

我有这个想法

'columns' => [
    ['class' => 'yii\grid\SerialColumn'],
    [
        'attribute' => 'order_delivery_address_city',
        'value' => 'address.order_delivery_address_city'
    ],
显示类似“1”或“2”或“3”的字段。。。怎么改成这样

if (address.order_delivery_address_city == '1') {
    'value' => 'New-York'
}
尝试:

试试这个:

             [
                'attribute'=>'order_delivery_address_city',
                'value'=>function($model){
                  return $model->order_delivery_address_city=='1' ? 'New-York':'Anything else';
                }
            ],

它会很好用的。这样试试

“列”=>[
['class'=>'yii\grid\SerialColumn'],
[
'attribute'=>'order\u delivery\u address\u city',
“值”=>函数($model){
$city\u name=city::find()->选择(['city\u name'])->其中(['city\u id'=>$model->order\u delivery\u address\u city])->一个();
返回$city\u name?$city\u name->city\u name:'None';
},

],
如果
地址
关系与
城市
相关,则可以使用
地址.cityRleationName.city\u表格\u字段(例如城市名称)
             [
                'attribute'=>'order_delivery_address_city',
                'value'=>function($model){
                  return $model->order_delivery_address_city=='1' ? 'New-York':'Anything else';
                }
            ],