0
我需要的是将model1的所有行(id,名称)列为模型2中特定列的下拉列表存储在数据库中的ID,但在用户界面的下拉列表中显示名称。将模型的所有行(id,名称)列为另一个模型中特定列的下拉列表
我可以做这样的事情写在MODEL2一个函数,调用该函数在控制器2 /创建将它的工作我不知道它
请让我知道如果我能在任何好的方式实现这一目标。
我需要的是将model1的所有行(id,名称)列为模型2中特定列的下拉列表存储在数据库中的ID,但在用户界面的下拉列表中显示名称。将模型的所有行(id,名称)列为另一个模型中特定列的下拉列表
我可以做这样的事情写在MODEL2一个函数,调用该函数在控制器2 /创建将它的工作我不知道它
请让我知道如果我能在任何好的方式实现这一目标。
做一个功能在您的MODEL2像
public function myDropDownData(){
$data = Model1::model()->findAll();
$datalist = CHtml::listData($data, 'id', 'name');
retrun $datalist;
}
在视图中使用像这样
echo $form->dropDownList($model2,'model2_column_name',$model2->myDropDownData());
您可以使用了CHtml ::的ListData()它像
CHtml::dropDownList('myDropDown', '', CHtml::listData(Model1::model()->findAll(),
'id', 'name'));
然后你可以访问值为$_POST['myDropDown'];