Yii2 gridview格式属性是否基于输出?
我是yii2的新手,默认情况下,gridview中的字段是decimal,但我在value属性中有一些条件 我的代码视图如下所示Yii2 gridview格式属性是否基于输出?,yii2,Yii2,我是yii2的新手,默认情况下,gridview中的字段是decimal,但我在value属性中有一些条件 我的代码视图如下所示 [ 'attribute' => 'harga_diskon_periode', 'format' => function($model){ if($model->diskon_now == ""){ return "text";
[
'attribute' => 'harga_diskon_periode',
'format' => function($model){
if($model->diskon_now == ""){
return "text";
}else{
return "decimal";
}
},
'value' => function($model){
if($model->diskon_now == ""){
return "Tidak ada diskon";
}
},
],
所以我需要的是,如果输出数字,格式将是十进制的,如果输出字符串,格式将是文本
使用上面的代码,我得到了这个错误
类闭包的对象无法转换为字符串
我读了这个it'showstring | array
,所以我在format属性中使用了匿名函数
我错了吗?我的代码怎么了?我的代码应该是什么样子?我是yii2的新手,如有任何推荐,将不胜感激
提前感谢。GridView不允许在那里关闭,请这样做:
'attribute' => 'harga_diskon_periode',
'value' => function ($model) {
return $model->diskon_now == ''
? 'Tidak ada diskon'
: \Yii::$app->formatter->asDecimal($model->harga_diskon_periode);
},