如何通过 Yii 2 GridView 中的关系在一列中显示两个属性值

How can I show two attributes values in one column through relation in Yii 2 GridView

我在索引中有 Gridview 我想在一列中同时显示宽度和高度我该怎么做 这是查看代码

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

        'fld_id',
        'fld_name',
        [
            'label' => 'Material Name',
            'attribute' => 'fld_material_id',
            'value' => 'fldMaterial.fld_name',

        ],
        [
            'label' => 'Size',
            'attribute' => 'fld_size_id',
            'value' => 'fldSize.fld_width',
        ],
        // 'fld_size_id',
        ['class' => 'yii\grid\ActionColumn'],
    ],
]); ?>    

我在这里的模型中有关系 fldSize 它只是显示 fld_width 我想以 fld_width."x".fld_height 格式显示它我怎么能在 Yii2 中做

您应该只使用 value 回调,例如:

[
    'label' => 'Size',
    'attribute' => 'fld_size_id',
    'value' => function ($model) {
        return $model->fldSize->fld_width . 'x' . $model->fldSize->fld_height;
    },
],

抱歉,一年多后,它起作用了(不是下拉列表,而是 Select2)。 这是表单的代码

 <?= $form->field($model, 'ID_MACH')->widget(Select2::classname(), [
      'data'=> ArrayHelper::map(Maschines::find()->all(),'ID_MACH','fullname'), 
     'language'=>'ru',
    'theme'=>'krajee',
    'options'=>['placeholders'=>'suda...',
        'prompt'=>'10-'],
    'pluginOptions'=>[
        'allowclear'=>true
    ],

接下来是 Mashines 的模型:
public function getFullName() { return $this->customer.','.$this->Manufacturer.','.$this->type.','.$this->serial;}