Php saveAll不是全部保存

Php saveAll不是全部保存,php,cakephp,cakephp-2.3,Php,Cakephp,Cakephp 2.3,我在两款车型中都有HABTM关系 Person.php public $hasAndBelongsToMany = array( 'Tag' => array( 'className' => 'Api.Tag' )); public $hasAndBelongsToMany = array( 'Person' => array( 'className' => 'Api.Person', ));

我在两款车型中都有HABTM关系

Person.php

public $hasAndBelongsToMany = array(
    'Tag' =>
        array(
  'className' => 'Api.Tag'
));
public $hasAndBelongsToMany = array(
    'Person' =>
        array(
        'className' => 'Api.Person',

    ));
public function edit(){
    $results = $this->Person->saveAll($this->request->data);
}
Tag.php

public $hasAndBelongsToMany = array(
    'Tag' =>
        array(
  'className' => 'Api.Tag'
));
public $hasAndBelongsToMany = array(
    'Person' =>
        array(
        'className' => 'Api.Person',

    ));
public function edit(){
    $results = $this->Person->saveAll($this->request->data);
}
PeopleController.php

public $hasAndBelongsToMany = array(
    'Tag' =>
        array(
  'className' => 'Api.Tag'
));
public $hasAndBelongsToMany = array(
    'Person' =>
        array(
        'className' => 'Api.Person',

    ));
public function edit(){
    $results = $this->Person->saveAll($this->request->data);
}
_

当我在数据库中手动设置标记时,我能够将它们正确地读回我的应用程序,当我删除现有标记时,它们将从数据库中删除。问题是,当我尝试使用cakephp添加它们时,没有添加任何内容

我的数据数组看起来有点古怪,因为我实际上使用这个插件来转换东西。


我的CakePHP应用程序正在获取下面的数据,但它没有添加我的新标记,也没有在people_tags join表中添加我的关联。你知道我做错了什么吗?

如果要插入数据,那么你必须特别做,只有在模型依赖关系为真时才会自动删除。至于剩下的,你必须自己去做。这看起来很奇怪,它会自动删除,但不会保存。你能解释一下原因吗?只是好奇。请阅读cakephp文档,因为这里不可能给出您的描述。还有一个选项以Model::saveAssociated(array$data=null,array$options=array()的形式提供)。请在这里阅读,并按要求做。谢谢,我给了你一个要检查的链接。这对你没有帮助?