相关疑难解决方法(0)

Django中的左外部反向select_related?

想象一下以下模型:

class Parent(Model):
    ...

class Child(Model)
    father = ForeignKey(Parent)
    ...
Run Code Online (Sandbox Code Playgroud)

有些父母有孩子,有些则没有孩子(他们不是真正意义上的父母,只是虚构的名字).

我想提出以下问题:我想列出所有的父母,如果他们有孩子,也请带孩子.这相当于Child表的左外连接,即:

select * from app_parent left join app_child on child_father_id=parent_id
Run Code Online (Sandbox Code Playgroud)

这样,当我在模板中调用Parent.child_set时,我不会在数据库中访问数十亿次.有没有办法做到这一点?谢谢

django left-join django-queryset django-select-related

28
推荐指数
3
解决办法
9304
查看次数