一部の HABTM データの保存に問題があります。
私のモデル「Category」には、「SubCategory」と呼ばれるそれ自体との HABTM 関係があります
$this->Category->create();
$c["Category"]["display_order"] = $this->Category->getNextDisplayOrder();
$c["Category"]["title"] = $this->request->data["title"];
$c["SubCategory"]["category_id"] = $id; //The id of the parent category
$new_cat = $this->Category->saveAll($c);
これにより、新しいカテゴリが作成され、データベースに正常に保存されますが、サブカテゴリ テーブルに ID が間違った順序で保存されています。(category_id => 作成したばかりの新しい猫の ID、subcategory_id => parent_id)
IDが間違った列に保存されている理由はありますか?
これが私の HABTM 関係です
public $hasAndBelongsToMany = array(
'SubCategory' => array(
'className' => 'Category',
'joinTable' => 'categories_subcategories',
'foreignKey' => 'category_id',
'associationForeignKey' => 'subcategory_id',
'unique' => 'keepExisting',
'conditions' => '',
'fields' => '',
'order' => '',
'limit' => '',
'offset' => '',
'finderQuery' => '',
'deleteQuery' => '',
'insertQuery' => ''
)
);