Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在cakephp中保存继承的对象_Cakephp_Cakephp 2.1 - Fatal编程技术网

如何在cakephp中保存继承的对象

如何在cakephp中保存继承的对象,cakephp,cakephp-2.1,Cakephp,Cakephp 2.1,我已经用cakephp实现了继承。我有两个模型:个人模型和员工模型。员工继承人 Person: id, name, age, address Employee: id, person_id 当我执行$this->Employee->savAll($this->request->data)时,Person和Employee正在保存,但数据库中未设置Person\u id,其填充为NULL,是否有任何方法可以一次性正确保存继承的对象,模型如下所示 Class Person extends AppM

我已经用cakephp实现了继承。我有两个模型:个人模型和员工模型。员工继承人

Person: id, name, age, address
Employee: id, person_id
当我执行$this->Employee->savAll($this->request->data)时,Person和Employee正在保存,但数据库中未设置Person\u id,其填充为NULL,是否有任何方法可以一次性正确保存继承的对象,模型如下所示

Class Person extends AppModel{
 var $name="Person";
}

App::import('model', 'Person')
Class Employee extends Person{
  var $name="Employee";
  public $actsAs = array( 'Inherit' ); 
}
从文件来看

saveAll函数只是saveMany和saveAssociated方法的包装器


您既不保存一个模型中的多个,也不保存关联的模型。您需要保存父模型,检索ID,并使用它来保存继承模型。

我认为您可能混合了继承和关系。但我不熟悉您似乎正在使用的可继承行为。这是CakeDC的吗?不,它是正确的继承,我无法在Employee表中保存person_id。我跟随了文章。奇怪的是,那个链接对我来说是断开的,Google Cache只有一个(机器)翻译的德语版本…很抱歉,这是链接,所以你可能想定义你的关联。员工属于个人。