Django:Complex FK 相关模型的查询集过滤器
Django:Complex queryset filter for FK related models
我有很多这样的模型:
Model 1:
key=models.charfield()
....
Model 2:
.....
key=fk(model1, ralated_name='model2key')
model 3:
.....
key=fk(Model 2, related_name='model3key')
models 4:
.....
key=FK(model 3, related_name='model4key')
现在我必须为模型 4 编写一个查询集,其中我需要考虑模型 1 = 某物进行数据过滤。
怎么做?
这应该有效:
Model4.objects.filter(key__key__key__key="some char value")
这将对上述表格之间的 key
字段执行三个 INNER JOIN
。
我有很多这样的模型:
Model 1:
key=models.charfield()
....
Model 2:
.....
key=fk(model1, ralated_name='model2key')
model 3:
.....
key=fk(Model 2, related_name='model3key')
models 4:
.....
key=FK(model 3, related_name='model4key')
现在我必须为模型 4 编写一个查询集,其中我需要考虑模型 1 = 某物进行数据过滤。
怎么做?
这应该有效:
Model4.objects.filter(key__key__key__key="some char value")
这将对上述表格之间的 key
字段执行三个 INNER JOIN
。