Rails: зависимый и: удалить - PullRequest
2 голосов
/ 11 апреля 2009

Я использую Rails 2.0.2 и не могу использовать: зависимый =>: удалить в моих ассоциациях AR

 has_many :items, :dependent => :delete

Мне выдается эта ошибка.

  The :dependent option expects either :destroy, :delete_all, or :nullify (:delete)

Мне не удалось найти документацию для: delete_all, чтобы узнать, выполняет ли она то, что я хочу. Это в основном то же самое, что удалить? Был: удалить недавно добавленный в Rails и не в той версии, которую я использую?

Ответы [ 3 ]

7 голосов
/ 11 апреля 2009

Вот соответствующая документация для Rails 2.0.2 :

если установлено: уничтожить все связанные объекты уничтожаются рядом с этим объектом, называя их уничтожить метод. Если установлено: delete_all все связанные объекты удалены без вызова их метода уничтожения. Если установлено: обнулять все связанные внешние ключи объектов установлены в NULL без вызова их обратных вызовов сохранения.

railsbrain.com - хорошее место для поиска документов, относящихся к определенной версии Rails.

2 голосов
/ 05 февраля 2011

Действие по умолчанию - «ничего не делать». Объекты остаются осиротевшими, ничего не удаляется, не уничтожается и не аннулируется.

0 голосов
/ 11 апреля 2009

Нет упоминания: удалить в документации текущей стабильной версии 2.3.2:

Объекты будут дополнительно уничтожены, если они связаны с: зависимым =>: уничтожить, и удалены, если они связаны с: зависимым =>: delete_all

http://apidock.com/rails/ActiveRecord/Associations/ClassMethods/has_many

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...