Sehen zerstören Löschungen seiner zugehörigen Elemente , wo DELETE_ALL mehrere Daten aus Selbst Tabelle löschen können alsDELETE * FROM table where field = 'xyz'
: Abhängig mögliche Optionen:
Steuert, was mit den zugeordneten Objekten passiert, wenn deren Besitzer zerstört wird. Beachten Sie, dass diese als Rückrufe implementiert sind und Rails Rückrufe der Reihe nach ausführt. Daher können andere ähnliche Rückrufe das: abhängige Verhalten beeinflussen, und das :dependentVerhalten kann andere Rückrufe beeinflussen.
:destroy bewirkt, dass alle zugehörigen Objekte ebenfalls zerstört werden.
:delete_all bewirkt, dass alle zugeordneten Objekte direkt aus der Datenbank gelöscht werden (Rückrufe werden also nicht ausgeführt).
:nullifybewirkt, dass die Fremdschlüssel auf NULL gesetzt werden. Rückrufe werden nicht ausgeführt.
:restrict_with_exception bewirkt, dass eine Ausnahme ausgelöst wird, wenn Datensätze zugeordnet sind.
:restrict_with_error bewirkt, dass dem Eigentümer ein Fehler hinzugefügt wird, wenn Objekte zugeordnet sind.
Wenn Sie diese :throughOption verwenden, muss die Zuordnung im Join-Modell zu gehören gehören, und die Datensätze, die gelöscht werden, sind die Join-Datensätze und nicht die zugeordneten Datensätze.