Yii dropDownList未完全填充

Yii dropDownList未完全填充,yii,yii2,Yii,Yii2,在我看来,我有一个这样的代码 <?= $form->field($model, 'Language')->dropDownList(ArrayHelper::map(Doodles::getLanguages(), "Language", "language"), ['class'=>'form-control','prompt' => 'Choose language'])->label('Language') ?> 和getLanguages方法返

在我看来,我有一个这样的代码

<?= $form->field($model, 'Language')->dropDownList(ArrayHelper::map(Doodles::getLanguages(), "Language", "language"), ['class'=>'form-control','prompt' => 'Choose language'])->label('Language') ?>
getLanguages
方法返回

数组(大小=2)

0=> 数组(大小=1) 'language'=>string'rus'(长度=3)1=> 数组(大小=1) 'language'=>字符串'en'(长度=2)

在结果页面中,我得到了一个带有未填充值属性的select,并且只有一个选项,而不是两个选项

<select id="utdoodles-language" class="form-control" name="UtDoodles[Language]">
<option value="">Choose language</option>
<option value="" selected="">en</option>
</select>

Doodles::getLanguages
方法中,更改如下:

return Doodles::find()->select('language')->distinct()->asArray()->all();

它看起来更好,但给出相同的结果。选项和空值中只有
en
语言。我在上面问题的底部添加了这个数组。您在doodle表的“langauge”属性中存储了什么。bcs您在表中的arrayIn
Language
属性中获得数组,我正在使用类型
char(3)
存储值
rus
en
array (size=2)
  0 => 
    array (size=1)
      'language' => string 'rus' (length=3)
  1 => 
    array (size=1)
      'language' => string 'en' (length=2)
return Doodles::find()->select('language')->distinct()->asArray()->all();