yii中没有模型的下拉列表

时间:2013-03-27 11:47:13

标签: yii

我正在使用一个组件来解析yii中的国家api。因此在表单下拉列表中调用列出国家/地区的功能。函数将国家/地区列表作为数组返回 form.php的

<?php echo $form->labelEx($model,'country'); ?>
<?php $cty=  Country::getCountry();
      echo $form->dropdownList($model,'country', $cty , array('style'=>'width: 175px','empty'=>array('empty'=>Yii::t('app','Select Country'))));?>

现在国家/地区列表在下拉列表中正确加载,但在保存时间时会保存相应的国家/地区ID。我想在db中保存国家名称。它解决了吗?

2 个答案:

答案 0 :(得分:2)

您必须使用所需的键/值构建自己的自定义数组,例如:

$cty = Country::getCountry();
$cty = array_combine(array_values($cty), $cty);

答案 1 :(得分:0)

您可以使用这种方式(如果您需要Country表的所有项目)

$cty = CHtml::listData(Country::model()->findAll(), 'name', 'name');