我在cakephp中实现了继承。我有两个模型Person和Employee。员工继承人
Person: id, name, age, address
Employee: id, person_id
当我 $ this-> Employee-> savAll($ this-> request-> data)时,Person和Employee正在保存,但 person_id没有获取在数据库中设置,它被NULL填充,有没有办法一次性正确保存继承的对象,模型如下所示
Class Person extends AppModel{
var $name="Person";
}
App::import('model', 'Person')
Class Employee extends Person{
var $name="Employee";
public $actsAs = array( 'Inherit' );
}
答案 0 :(得分:0)
来自Saving Your Data文档,
saveAll函数只是saveMany和saveAssociated方法的包装器
您既不会保存一个模型,也不会保存相关模型。您需要保存父模型,检索ID,并使用它来保存继承模型。