【发布时间】:2013-04-29 00:02:16
【问题描述】:
我对 Yii 的 activerecord-relation-behavior 扩展有疑问。
我有一个主模型:User 和一个子模型:UserPerson(一种配置文件)
这两个模型之间的关系设置好了,模型的行为是使用yiiext,但我仍然无法连接它们。
在这种情况下$this 是一个模型,它扩展了User 模型并称为RegistrationModel
$person = new \UserPerson();
$person->full_name = $this->name;
$person->birthday = $this->birthday;
$person->gender = $this->gender;
$this->person = $person;
$this->person->save();
这样,我应该可以跑了:$this->save()
但我得到这个错误:
您无法保存具有新相关记录的记录!
我尝试了很多变体,但只有丑陋的、无关系的版本有效。 :(
$person->user_id = $this->id;
//..
$person->save();
有人对这个问题有什么建议吗?
【问题讨论】:
-
这就是它应该如何工作的。 Yii 不支持自动保存相关记录。您必须手动保存它们。
-
但这就是为什么我使用activerecord-relation-behavior 来完成这项工作并在模型之间建立真正的关系。
-
哦,对不起,错过了你提到的扩展。
标签: yii