如何在dropDownList中修改字符串的视图?

时间:2018-03-23 07:23:04

标签: yii2

我有一张桌子

| id|title|parent|
|---|-----|------|
| 1 | ABC | null |
| 2 | DEF |   1  |
| 3 | GHI | null |  
|----------------|

我为dropDownList准备数据

$a = Model::find()->select('id, title, parent')->all();
$b = ArrayHelper::map($a, 'id', 'title');

<?= $form->field($modelForm, 'parent')->dropDownList($b); ?>

当我选择父母&#39; (&#39;父母&#39;有一个外键来识别&#39;)我看到下一个清单:

ABC
DEF
GHI

但我希望在下拉列表中看到类似的内容:

ABC
DEF => 1
GHI

ABC
DEF (1)
GHI

如何将父列添加到建议字符串的名称中?

1 个答案:

答案 0 :(得分:2)

你只需改变这一行。

$b = ArrayHelper::map($a, 'id', function($model){
  return $model->title.'=>'.$model->parent;
});

OR

$b = ArrayHelper::map($a, 'id', function($model){
  return $model->title.'('.$model->parent.' )';
});