【问题标题】:Django queryset to get children and grandchildrenDjango查询集获取子孙
【发布时间】:2012-03-02 14:31:29
【问题描述】:

我有一个引用自身的 django 模型(在父子孙关系中)。

我正在尝试执行一个查询,该查询将返回特定父项的所有子实例和孙实例。

例如:

class Post(models.Model):
    parent = models.ForeignKey('self', null=True, related_name="children")

这种关系深入 3 个级别 - 获取包含所有子/孙的查询集的最佳方法是什么?我想把它们放在一起,这样我就可以按日期订购它们。

【问题讨论】:

    标签: django django-models django-queryset


    【解决方案1】:

    我认为这应该可行:

    from django.db.models.query import Q
    Post.objects.filter(Q(parent = post) | Q(parent__parent = post))
    

    【讨论】:

      【解决方案2】:

      我认为你应该试试django-mptt

      【讨论】:

        猜你喜欢
        • 2012-08-02
        • 1970-01-01
        • 2021-12-10
        • 1970-01-01
        • 1970-01-01
        • 2017-05-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多