これは悩みました。
例えばCakePHPのサイトのように、RecipeとTagとが多対多の関係でhasAndBelongsToMany(HABTM)で定義されているとき、レシピに複数のタグを追加するには、Recipeモデルで
$data['Tag’] = array(1,2);
$this->create();
$this->saveAll($data);
なんてすればいいのですが、その関係を削除したいことがあります。単純に
$data['Tag’] = array();
$this->create();
$this->saveAll($data);
とすると、全くTagには影響はありませんでした。ではどうすればいいかというと、正解はこのサイト(リンク切れ注意)。Thanks!。
array()をarray(false)にすればいいのですね。
$data['Tag’] = array(false);
$this->create();
$this->saveAll($data);
これはわかりませんでした。でも、何かおかしな仕様ですが、しかたありません。