我有3个型号:
class Model1:
...
class Model2:
...
m1 = ForeignKey(Model1)
var2 = ....
class Model3:
...
m2 = ForeignKey(Model2)
var3
我正在尝试更新Model3:
Model1.objects.get(...).model2_set.filter(....).update(... How to update all model3_set__var3? ....???)
答案 0 :(得分:2)
您可以使用关系:
Model3.objects.filter(m2__m2var=1, m2__m1__m1val=1).update(...)
__
用于关系,您可以使用外键连接进行表连接,这样您就可以Model2
过滤m2__<m2_field>
上的字段,并过滤Model1
上的字段m2__m1__<m1_field>
答案 1 :(得分:0)
你可以尝试:
Model3.objects.filter(model1__id=x).update(var3=y)
我希望Django能够自动处理关系,尽管我没有在第二级关系中测试过这种关系。
的详情