school.destroyとするとschool及びclassesは削除されるがstudentsは削除されない。:destroy_allではdestroyを呼び出さずに削除されるようだ。after_destoryなどを使うためにも以下のように:dependent⇒:destroyと変更する。:dependent⇒:delete_allはwhereでschool_idを指定しまとめてclassのレコードを削除する。モデルの関係が3以上ネストせず、after_destroyなどのコールバックを使用していない場合delete_allの方がパフォーマンスの面で有利のようだ。enibloadmin文書の先頭へ。