Lihat menghancurkan menghapus elemen yang terkait di mana delete_all dapat menghapus beberapa data dari tabel diri sebagaiDELETE * FROM table where field = 'xyz'
: Opsi tergantung yang mungkin:
Mengontrol apa yang terjadi pada objek terkait ketika pemiliknya dihancurkan. Perhatikan bahwa ini diimplementasikan sebagai callback, dan Rails mengeksekusi callback secara berurutan. Oleh karena itu, panggilan balik serupa lainnya dapat memengaruhi: perilaku dependen, dan :dependentperilaku tersebut dapat memengaruhi panggilan balik lain.
:destroy menyebabkan semua benda terkait juga hancur.
:delete_all menyebabkan semua objek terkait dihapus langsung dari database (jadi panggilan balik tidak akan dieksekusi).
:nullifymenyebabkan kunci asing diatur ke NULL. Panggilan balik tidak dilakukan.
:restrict_with_exception menyebabkan pengecualian untuk dimunculkan jika ada catatan terkait.
:restrict_with_error menyebabkan kesalahan ditambahkan ke pemilik jika ada objek terkait.
Jika menggunakan dengan :throughopsi, asosiasi pada model bergabung haruslah menjadi milik_ untuk, dan catatan yang bisa dihapus adalah catatan bergabung, bukan catatan terkait.