gpt4 book ai didi

Django:查询所有具有外键指向的项目

转载 作者:行者123 更新时间:2023-12-04 01:56:53 26 4
gpt4 key购买 nike

我有两个模型:

class A(models.Model):
name = models.CharField(max_length=100, unique=True)

class B(models.Model):
a = models.ForeignKey(A)

在 Django 中,如何选择所有具有指向它们的 B 类对象的“A”类对象?例如,如果数据库包含这三个“A”类条目:
A, named "one"
A, named "two"
A, named "three"

和 B 类的两个条目:
B, points to "two"
B, points to "three"

我想选择 A 类的“二”和“三”类。

最佳答案

你可以这样做:

a_qs = A.objects.filter(b = b) 

其中 b 是类 B 的对象和 b=是指您要查询反向关系的小写模型名称。

阅读更多 lookups that span relationships here .它涵盖了如何对模型的外键属性进行反向查找

编辑:

如果您正在寻找没有任何 ForeignKey 的所有对象指向它们的对象,您可以使用 exclude __isnull
a_qs = A.objects.exclude(b__isnull = True) 

关于Django:查询所有具有外键指向的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20006765/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com