首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >大容量更新相关模型

大容量更新相关模型
EN

Stack Overflow用户
提问于 2015-05-27 05:18:33
回答 2查看 1.5K关注 0票数 0

我有三个模特:

代码语言:javascript
运行
复制
class Model1:
  ...

class Model2:
  ...
  m1 = ForeignKey(Model1)
  var2 = ....

class Model3:
  ...
  m2 = ForeignKey(Model2)
  var3

我正在尝试更新Model3:

代码语言:javascript
运行
复制
Model1.objects.get(...).model2_set.filter(....).update(... How to update all model3_set__var3? ....???)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-05-27 08:08:07

你可以利用关系:

代码语言:javascript
运行
复制
Model3.objects.filter(m2__m2var=1, m2__m1__m1val=1).update(...)

__用于关系,您可以为表连接使用外键连接,这样就可以通过m2__<m2_field>筛选Model2上的字段,并在Model1上使用m2__m1__<m1_field>筛选字段。

阅读相关文档

票数 2
EN

Stack Overflow用户

发布于 2015-05-27 07:59:25

你可以试试:

代码语言:javascript
运行
复制
Model3.objects.filter(model1__id=x).update(var3=y)

我希望Django能够自动处理关系,尽管我还没有在第二层关系中测试过这一点。

更多关于Django文档:跨越关系的查找的信息

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30473738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档