我有一个嵌套模型:一个列表可以有很多子列表。(顺便说一下,我用过祖先)
我有一条规则,当我删除一个列表时,如果它是父母的唯一孩子(没有其他兄弟姐妹),它将取消。
但是,这现在阻止我删除父列表。例如:
L1
|-L2
|-L3
|-L4
我不能删除 L3,因为删除它会删除 L4,但 L4 是唯一的孩子。
进行此删除的最佳方法是什么?是否有状态表明我当前处于嵌套销毁调用中?
我有一个压倒一切的销毁方法:
def destroy
if siblings.count == 1
errors.add(:base,'Cannot delete List because it is the only child')
return false
else
super
end
end