如何在rails中删除父对象时删除子对象?

Jam*_*mes 18 activerecord cascade ruby-on-rails associations

模特a:

has_many :b, :dependent => :delete_all
Run Code Online (Sandbox Code Playgroud)

模型b:

belongs_to :a
belongs_to :c
Run Code Online (Sandbox Code Playgroud)

模型c:

has_many :b
Run Code Online (Sandbox Code Playgroud)

当我删除一个时a,我也希望b's删除子项,以便从c's可能引用它们的任何内容中删除它们.但是,上述方法无效.我很感激任何帮助.

hob*_*ave 43

像这样:

class Widgets < ActiveRecord::Base
  has_many :whatevers, :dependent => :destroy
end
Run Code Online (Sandbox Code Playgroud)

更新

您最近的评论表明您正在使用delete()方法删除对象.这不会使用回调.请阅读手册了解具体信息.