无法删除嵌套子项的模型

时间:2013-05-30 11:03:25

标签: ruby-on-rails activerecord

class Foo < ActiveRecord::Base
  has_many: bars, dependent: :destroy
  has_one: roo, dependent: :destroy
end

class Bar < ActiveRecord::Base
  has_many: bazs, dependent: :destroy
end

class Baz < ActiveRecord::Base
end

class Roo < ActiveRecord::Base
end

我正在尝试使用以下代码删除Foo,但在从bar /

中删除baz引用时遇到FK异常

我的删除roo的语法是否正确?

Foo.delete(foo_id)

2 个答案:

答案 0 :(得分:1)

试试这个:

@foo = Foo.find(foo_id)
@foo.destroy

答案 1 :(得分:1)

参考this了解dependent: :destroydestroy&amp;的使用情况delete,所以你必须使用destroy方法:destroy/:destroy_all关联对象与此对象一起被销毁

@foo.destroy