假设您有以下模型:
class Connect:
a = models.ForeignKey(A)
b = models.ForeignKey(B)
为了连接模型A
和B
(此表对于数据目的是必需的,m2m字段将不足够)
假设我有一个特定的模型B
,名为b_model
a_models = Connect.objects.filter(b=b_model)
上面是Connect
对象的查询集。我想要一个A
对象的查询集。下面将执行以下操作:
a_models = [obj.a for obj in Connect.objects.filter(b=b_model)]
但这将评估查询集并创建一个列表。我想创建一个尚未计算的查询集,它是A
对象的查询集。我怎样才能做到这一点?
如果你想要一个对象,从一个开始
在
A
或B
上,您可以使用以下代码定义另一个模型的ManyToManyField
(通过Connect
)现在您可以使用
以及
而且您不必直接查询
Connect
模型。你知道吗相关问题 更多 >
编程相关推荐