在rails指南中,描述如下:
如果对象与
:dependent => :destroy
关联,它们将被另外销毁,如果对象与:dependent => :delete_all
关联,它们将被删除
对,酷.但是被销毁和被删除有什么区别呢?
在rails指南中,描述如下:
如果对象与
:dependent => :destroy
关联,它们将被另外销毁,如果对象与:dependent => :delete_all
关联,它们将被删除
对,酷.但是被销毁和被删除有什么区别呢?
区别在于回调.
:delete_all
直接在应用程序中生成,并通过SQL删除:
DELETE * FROM users where compagny_id = XXXX
对于:destroy
,有一个你所有子元素的实例.所以,如果你不能摧毁它,或者如果每个都有自己的:dependent
,可以调用它的回调.