yii 主从表的新增与修改 [ 新手入门 ]
大家好。我想问个问题。就是有一个master(主表),有一个detail(从表).顾名思义。detail表示更随着master的。然后我们现在有一个view.就叫index.php把。 里面同时显示master表与detail表内容.比如master中有一个名叫字段name,age,sex. detail有字段shoe,shoesize等等。假设我们查询一个用户名叫resory的。然后得到下面的数据
master :
name age sex
resory 20 man
detail:
shoe shoesize
adidas 43
nike 44
361 43
index.php中的master表,detail表都可以新增修改, 问题是现在只能通过一个按钮把新增或者修改的数据保存到数据库中。 思路应该是怎样的?大家帮帮忙解决!谢谢!
共 6 条回复
-
-
-
看看模型中的relation关联模型的用法
写法如下:Master模型public function relations(){ return array( 'detail'=>array(self::HAS_ONE,'Detail','master_id'), ); }
简单示例如下:
$master = Master::model()->find(“name=:name",array(':name'=>'resory'));
$mater->detail->shoe
或者$mater->detail->shoesize
来调用关联的detail的值,或者修改
然后调用$master->save();$mater->detail->save();
来保存 -
-
-
view表单
<?php $form=$this->beginWidget('CActiveForm'); ?> //$master <?php echo $form->textField($master,'name')?> <?php echo $form->textField($master,'age')?> // ... //$master->detail <?php echo $form->textField($master->detail,'shoe')?> <?php echo $form->textField($master->detail,'shoesize')?> <?php echo CHtml::submitButton('submit');?> <?php $this->endWidget();?>
controller简单处理
$master->attributes = $_POST['Master']; $master->detail->attributes = $_POST['Detail']; if($master->validate() && $master->detail->validate()){ $master->save(); $master->detail->save(); }
resory 廣東
注册时间:2012-07-20
最后登录:1970-01-01
在线时长:0小时0分
最后登录:1970-01-01
在线时长:0小时0分
- 粉丝0
- 金钱30
- 威望0
- 积分30