您是否仔细检查了$ _POST变量?对于质量“属性”分配到工作数组应该是这样的形式:
$_POST = (
'ResumeModel' => (
'data1' => 'something',
'data2' => 'something else',
),
'UserProfile' => (
'data3' => 'yo ho ho',
'data4' => 'bottle of rum',
)
)
如果它看起来像这样它是错的:
$_POST = (
'ResumeModel' => (
'data1' => 'something',
'data2' => 'something else',
'data3' => 'yo ho ho',
'data4' => 'bottle of rum',
)
)
为了保证形式建设的正确$ _ POST阵列每个模型,请确保您传递两个$简历和$剖面模型到表单视图是这样的:
<?php
$resume=new ResumeModel;
$profile=new UserProfile;
$this->render('yourFormView', array('resume'=>$resume,'profile'=>$profile));
?>
然后,在“yourFormView”,确保您创建的FO每个模型适当RM领域,像这样:
<?php $form=$this->beginWidget('CActiveForm'); ?>
<?php echo $form->textField($resume,'data1'); ?>
<?php echo $form->textField($resume,'data2'); ?>
<?php echo $form->textField($profile,'data3'); ?>
<?php echo $form->textField($profile,'data4'); ?>
<?php $this->endWidget(); ?>
谢谢!该表单已正确形成。问题在于模型上的某些字段没有任何验证规则,也没有在模型上声明为“安全”,所以这就是为什么没有被批量分配。 – Petruza 2010-07-21 11:43:18
啊,当然。很高兴你知道了!或许,你应该将自己的答案标记为正确答案。干杯 – thaddeusmt 2010-07-22 16:39:59