Django 检查具有两个列表/查询集的两个实体/模型之间是否存在关系
我有三种型号:A、B和CDjango 检查具有两个列表/查询集的两个实体/模型之间是否存在关系,django,django-models,django-queryset,Django,Django Models,Django Queryset,我有三种型号:A、B和C A有一个定义B或C是否可以连接到它的类型 B与a有一个一元化的关系 C与a有一个一元化的关系 我需要的是: 获取类型为B但a B对象不相关的所有帐户 与C的1相同 因此,我: a_type_b = Account.objects.filter(type=ACCOUNT_TYPE_B) 有一些was需要检查B模型/对象是否已经附加/相关,而不是通过所有帐户循环并检查?,因为这会花费大量时间和查询,而且效率不高 在创建/更新模型时,不要让C连接到B类帐户,反之亦
- A有一个定义B或C是否可以连接到它的类型
- B与a有一个一元化的关系
- C与a有一个一元化的关系
我需要的是:
- 获取类型为B但a B对象不相关的所有帐户
- 与C的1相同
a_type_b = Account.objects.filter(type=ACCOUNT_TYPE_B)
有一些was需要检查B模型/对象是否已经附加/相关,而不是通过所有帐户循环并检查?,因为这会花费大量时间和查询,而且效率不高
pk
进行筛选,例如:
A.objects.filter(type=A.ACCOUNT_TYPE_B, b__pk__isnull=True)
你能分享你的模型和相关代码而不是描述它吗?请展示真实的代码
a=a.objects.filter()
不是字段定义,在类级别没有意义。@DanielRoseman非常抱歉,这是编辑问题,我更新了
A.objects.filter(type=A.ACCOUNT_TYPE_B, b__pk__isnull=True)