我有以下模型关联
客户模式
class Customer
has_many :readings
has_many :invoices
end
阅读模型
class Reading
belongs_to :customer
end
发票模型
class Invoice
belongs_to :customer
has_many :invoice_items
end
发票项目
class Invoiceitem
belongs_to :invoice
end
在我的customers_controller中创建销毁操作会删除客户,但是它会留下很多孤立的记录,因为nil值会让我在发票控制器上调用show action。
如何删除模型中的客户及所有相关记录?
答案 0 :(得分:1)
您可以将:dependent => :destroy
添加到has_many
API Documentation部分从关联中删除包含此示例。
例如:
class Author
has_many :posts, :dependent => :destroy
end
Author.find(1).destroy # => Will destroy all of the author's posts, too