使用关联数组创建下拉列表

时间:2014-07-02 17:46:49

标签: yii

我正在尝试从我的数据库创建动态下拉列表。我注意到当我使用Yii查询时,array(1=>1, 2=>2...)格式CHtml::dropDownList()返回一个我需要 public function cDropdown() { $sql = "SELECT DISTINCT `code`, `name` FROM `AB` GROUP BY `code` ORDER BY `name` ASC"; $query = Yii::app()->db->createCommand($sql)->queryAll(); $arr = array(); foreach($query AS $name=>$value) $arr[$value['code']] = $value['name']; return $arr; }

的数组

所以我添加了一个for循环来做到这一点。这是正确的还是遵循框架标准?还是我错过了什么?对不起yii新手

在我的模特中

{{1}}

1 个答案:

答案 0 :(得分:0)

您可以使用以下方式以非常简单的方式执行此操作:$form->dropDownList($model, 'attribute', CHtml::listData(ModelName::model()->findAll(), 'id', 'name'));

idname应替换为下拉列表中您需要的字段。 id将是值,将显示名称。

您也可以更改findAll()并使用您想要的其他方法。

好?祝你好运