Yii2 activeDropDownList中的连接

时间:2016-05-25 09:49:53

标签: yii2 dropdown

在Yii2的activeDropDownList中显示MilliStones的名称,但现在我想用它连接另一个字段(如millistone的数量)。

例如(Milli Stone名称 - 宝石数量)。

<?= Html::activeDropDownList($model, 'milli_stone_id',ArrayHelper::map(MilliStones::find()->where(['cat_id' => $Rings->milli_cat])->all(), 'id', 'name'),['prompt'=>'Select Milli Stone','class'=>'form-control']) ?>

2 个答案:

答案 0 :(得分:0)

你应该以这种方式在find()中使用select子句

    <?= Html::activeDropDownList($model, 'milli_stone_id', 
        ArrayHelper::map(MilliStones::find()->
            select('id, concat(name, id) as name ')->
            where(['cat_id' => $Rings->milli_cat])->all(), 'id', 'name'),
        ['prompt'=>'Select Milli Stone','class'=>'form-control']) ?>

答案 1 :(得分:0)

<?= Html::activeDropDownList($model, 'milli_stone_id',ArrayHelper::map(MilliStones::find()->where(['IN', 'id', $IdsArray2])->asArray()->all(),
                    'id',
                    function($model, $defaultValue) {
                        return $model['id'].'-'.$model['name'];
                    }
                ),['prompt'=>'Select Milli Stone','class'=>'form-control']) ?>