解决办法
假设A表有一个多对多properties字段,通过A表远程查询properties的名称
qs = A.objects.filter(properties__name=xxx)
- 更复杂的:
A表有一个外键字段version连接B表,B表有一个多对多字段properties,通过A表远程查询properties的名称
qs = A.objects.filter(version__properties__name=xxx)
总结:通过以上规律可以发现,不论是一对多还是多对多,都可以通过双下划线语法__
连接过去,从而实现远程查询。
题外话(不理解可忽略):在使用点.
语法时,需要.all()查出多对多表的queryset,然后再遍历就可以取值。