我使用Django MPTT。
我不会删除我的节点,而是更新字段is_deleted
并过滤节点,以便“删除”节点不会显示。
如果节点被“删除”但某些节点的后代未被删除,则会出现问题。
不应显示“已删除”节点的后代。我可以通过在“删除”节点时为所有后代设置is_deleted
字段来解决此问题,但这不是最佳解决方案。
如何解决这个问题?
答案 0 :(得分:0)
只需将 is_deleted 设置为第一级(根)对象some_object.get_root()
,然后获取此查询集中SomeModel.objects.filter(level=0).exclude(is_deleted=True)
django-mptt get_descendants for a list of nodes