这是我dropdownlist
之类的..
<?= $form->field($queModel, 'qm_category_id')->dropdownList(QuestionCategory::getQuestionCat()) ?>
这是getQuestionCat()
函数
public static function getQuestionCat()
{
$dataTmp = self::find()->all();
$result = yii\helpers\ArrayHelper::map($dataTmp, 'qc_id', 'qc_name', 'qcCourse.course_name');
print_r($result); exit;
return $result;
}
上面的函数使用ArrayHelper
返回此数组显示如下图像..
在此下拉列表中,第一个<optgroup label="">
设置为<optgroup label="Other">
答案 0 :(得分:1)
map
函数接受闭包,因此您可以使用以下内容:
$result = \yii\helpers\ArrayHelper::map($dataTmp, 'qc_id', 'qc_name', function($model) {
if ($course_name = $model->qcCourse->course_name) {
return $course_name;
}
else {
return 'Other';
}
});