2011-01-18 9 views
0

私はアソシエーションに問題があります。つまり、「hasMany」リンクのプロジェクトです。プロジェクトの編集ページには、プロジェクト自体のフィールドを持ち、関連するリンクのためのいくつか:saveAllとの「古い」関連を削除します

echo $form->input('Link.0.url'); 
echo $form->input('Link.1.url'); 
echo $form->input('Link.2.url'); 

プロジェクトのコントローラで私が使用します$ this->プロジェクト - > SAVEALLプロジェクトを保存する(の$ this - >データ)、および3つの関連リンク。ファイン。今、プロジェクトを更新している間、私はいくつかのリンクを削除できるようにしたい。私はそれをシンプルに保ち、例えばjQueryを使ってすべてのLink.n. *を削除したいと思います。残念ながらこれは期待どおりに動作しません。削除された関連付けは、saveAllを使用した後も、$ this-> dataにはもう指定されていませんが、それでも存在します。

CakePHPは関連付けの保存に非常に特有です。残念ながら私はそれらを削除することについて何かを見つけることができません。誰かが私の問題を理解し、何をすべきか考えていることを願っています。

答えて

0

データベースに既に存在する場合は、delete()またはdeleteAll()を使用する必要があります。

+0

ありがとうございます。 saveAllを使用しているときに古い関連が自動的に削除されるということについて私が読んだと思った。しかし、これはうまくいくはずです、ありがとう。 –

+0

habtm、他に何もありません – dogmatic69

関連する問題