yii view和form页面引用表外键数据

Life is short , play more!
本文来自lihao's Blog,转载请注明。

假设我有2张表.

表一为产品.  id,productname 2个属性

表二为项目. id,productid, projectname 2个属性. (productid 外键到表一的id)

当我们在表二(即项目添加,及项目数据更新的页面, 希望将productid 显示为 productname, 为了用户体验) 

则在项目的_form.php 中,可以将productid 的echo打印,改为如下, 则自动会变为下拉菜单,可以供选择.

<?php echo $form->dropDownList($model,’productid’, CHtml::listData(Product::model()->findAll(), ‘id’, ‘productname’)); ?>

修改后,则创建project的时候, 不再只是一个文本框,让我们填写productid, 而可以查询product表, 并将已经存在的product 下拉为菜单.如下图.

同理, 在_view 中, 将打印productid 的地方, 改为.

<?php echo  Product::model()->findByPk($data->productid)->productname; ?> <br />

则会显示出对应的productname. 而不会再显示为product id.


发表评论

电子邮件地址不会被公开。 必填项已用*标注