在Yii中使用多个模型创建下拉列表

时间:2014-01-28 05:19:50

标签: php mysql yii

我正在尝试从名为supplier_table的表中填充下拉列表,但我目前正在尝试在system_user表的视图/创建中执行此操作。我不太确定如何在页面中使用不同的模型。

这是我在创建页面中的代码:

<?php $this->renderPartial('_form', array('model'=>$model,
//(>w<) for dropdown 
'companyval'=>$companyval)); ?>

问题是$ companyval来自不同的模型,目前,用于此页面的模型是针对此特定“创建”的模型。

我不确定我是否清楚解释过,但如果您有任何问题,请发表评论。

1 个答案:

答案 0 :(得分:2)

正如我从问题中所理解的那样,您希望根据不同的控制器显示其他模型的下拉列表。在Yii你可以这样做。

我想您使用的是CActiveForm,并且在用户表中有供应商Model和supplier_id。如果这可以解决问题,您可以修改。在view / _form of controller

中添加此代码
    <?php $supplier = Supplier::model()->findAll();
          $list = CHtml::listData($supplier ,'id','name'); 
          echo $form->DropDownList($model,'supplier_id', 
          $list, array('prompt'=>'Select Supplier')); ?>