我以这种方式收到提交的表单:
$resume->attributes = $_POST['ResumeModel'];<br/>
$profile->attributes = $_POST['UserProfile'];
两个 CActiveRecord 模型在此之前都已从相应的表中正确填充,它们具有正确的数据等。
两个模型的数据均按表单修改后显示在 $_POST 上。
但似乎对 attribute 属性的赋值仅适用于 $profile 而不适用于 $resume。
如果我在分配后检查它们的值, $profile 不会从表单中获得编辑。
模型的定义中是否存在可能导致这种情况的原因?据我所知,这两个模型的实现类似
我不明白为什么会发生这种情况,有人知道吗?
谢谢!
最佳答案
问题是 $resume 模型上的某些字段没有任何验证规则,也没有声明为安全,因此无法安全地批量分配它们。
引用: http://www.yiiframework.com/doc/guide/form.model#securing-attribute-assignments
关于activerecord - 将 Yii 中的表单数据获取到 CActiveRecord 模型适用于一种模型,但不适用于另一种模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3283551/