Moj*_*imi 1 python django django-models
我所有的模型与其他模型和它们自己都有多个多对多关系,并且它们都有一个“通过”表
假设我有 model A,它有一个ManyToManyFieldwith 模型Band C,让我们还考虑字段名称与相关模型相同
我的模型D有一个 ManyToManyField 和 model A。
现在,我想获取与Aclasses对象相关的所有对象B,C并且D
这是我尝试过的:
a1 = A.objects.get(pk = 1)
#Get all B objects related to A
a1.b.all()
#Get all C objects related to A
a1.c.all()
#Get all D objects related to A but from D class because that's where the field is
#Raises error 'ManyToManyDescriptor' object has no attribute 'all'
D.a.all(pk=1)
Run Code Online (Sandbox Code Playgroud)
实际模型可以在这里找到(我的问题是 Pessoa 和 CCir)。
您可以使用a.d_set.all()以获得反向关系,或使用您提供的代码:
obj = Pessoa.objects.get(pk=1) # get the object
obj.ccir_set.all()
Run Code Online (Sandbox Code Playgroud)
您也可以考虑related_name为您的 m2m 模型提供
| 归档时间: |
|
| 查看次数: |
4253 次 |
| 最近记录: |