从另一个表中使用radioList的选择选项

时间:2016-11-24 07:58:14

标签: yii2 yii2-advanced-app

我想将另一个表数据用于radioList的选项。

为了变得更好,我的意思是,我想要一些类似下面的代码:

            $form->field($model_add, 'link_type')->radioList([

               'another table ID 1' => 'another table title 1',
               'another table ID 2' => 'another table title 2',
            ]);

我可以在其中使用foreach,以获取选项吗?

如果我的问题不明确,请问我想了解更多。

2 个答案:

答案 0 :(得分:2)

您可以使用ArrayHelper。假设$array看起来像这样:

[
    ['id' => 1, 'title' => 'aaa'],
    ['id' => 2, 'title' => 'bbb'],
    // ...
]

您可以将其映射到

[
    1 => 'aaa',
    2 => 'bbb',
    // ...
]
像这样:

$form->field($model_add, 'link_type')->radioList(
    \yii\helpers\ArrayHelper::map($array, 'id', 'title')
);

答案 1 :(得分:1)

它也像Bizley一样回答,很清楚

<?= $form->field($model, 'fieldName')->radioList( 
        ArrayHelper::map(TableName::find()->all(), 'id', 'name'),
        ['prompt' => 'Please Select']);?>