You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Django中用Filter获取外键关联数据:仅获取assigned_user信息

加载Django需求模型的关联用户数据

当前你的查询仅获取了Requirement表本身的数据,当后续访问每条需求的assigned_user属性时,Django会为每条数据单独发起一次SQL查询,产生N+1的性能问题。要一次性加载关联的assigned_user完整数据,只需在查询中使用select_related()方法:

requirementsOb = Requirement.objects.filter(user=currentUser).select_related('assigned_user')

说明

  • select_related()适用于多对一/一对一的关联字段(比如这里的ForeignKey),它会通过SQL JOIN操作,将关联表的字段一同查询并加载到内存中。
  • 执行上述查询后,直接访问requirement.assigned_user就能获取完整的用户数据,不会触发额外的数据库请求。

内容的提问来源于stack exchange,提问作者Smith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 06:35:44