これについて驚くほどの情報はありません。以前はこれまでに実行したことはありませんが、私はbelongsTo
という関係のモデルを持っています。モデルがキーです。レコードを削除するときには、関連するレコードも削除されていることを確認する必要があります。belongsToアソシエーションを削除する
具体的には、belongsTo
とAddress
のBuilding
モデルがあります。建物を削除すると、関連する住所も削除されていることを確認する必要があります。
私は依存関係としてフラグを立てることはできません。そのため、コールバックはアドレスレコードが確実に削除されるかどうかを確認する最良の方法ですか?これは、私がコールバックでそれを行うことができることを知っているそれらのケースの1つですが、内臓レベルでは、より良い方法があるはずです。私はそれが事実かどうか疑問に思います。
ありがとうございました。 [コメントをもと]
データベースに外部キーを使用していない理由を
ビルディングとアドレスにhasOne/belongsToの関連付けがある場合、そのアドレスをBuildingテーブルに保存しないでください。 – Dave
いくつかの異なるモデル(Building、Contractor、Companyなど)には住所の値があり、それらのフィールドを統合したいと考えました。 –
データベースで外部キーを使用せず、 'DELETE CASCADEで'を選択する理由 – pleasedontbelong