Увидеть уничтожает удаляет связанные с ним элементы, где delete_all может удалить несколько данных из собственной таблицы какDELETE * FROM table where field = 'xyz'
: Зависимые возможные варианты:
Управляет тем, что происходит со связанными объектами, когда их владелец уничтожен. Обратите внимание, что они реализованы как обратные вызовы, а Rails выполняет обратные вызовы по порядку. Следовательно, другие подобные обратные вызовы могут влиять на зависимое поведение, а :dependentповедение может влиять на другие обратные вызовы.
:destroy вызывает уничтожение всех связанных объектов.
:delete_all вызывает удаление всех связанных объектов непосредственно из базы данных (поэтому обратные вызовы не будут выполняться).
:nullifyзаставляет внешние ключи быть установленными в NULL. Обратные вызовы не выполняются.
:restrict_with_exception вызывает исключение, если есть какие-либо связанные записи.
:restrict_with_error вызывает добавление ошибки к владельцу, если есть какие-либо связанные объекты.
При использовании с этой :throughопцией, ассоциация в модели соединения должна быть принадлежащей для принадлежности, а удаляемые записи являются записями соединения, а не связанными записями.