python - Django ORM 可以加入 pk 以外的其他内容吗?
问题描述
从:StartTable.objects.annotate(name=F('object_type_2__destination_table__name'))
Django 会自动编写一个包含此内容的查询:
LEFT OUTER JOIN "object" T4 ON ("start_table"."object_type_2_id" = T4."id")
LEFT OUTER JOIN "destination_table" ON (T4."id" = "destination_table"."object_id")
有没有办法让 Django 通过编写它来提高效率?:
JOIN destination_table ON destination_table.object_id = start_table.object_type_2_id
要记住的一些上下文;有start_table
几个外键字段都引用同一个object
表,但出于不同的原因,这就是我给出object_type_2_id
列名的原因。
解决方案
推荐阅读
- java - 关于使用子字符串而不必减去 1 的问题
- pandas - 我如何检查特定列是否具有任何行的相似值,. 一个类似的例子,这种情况是 456 类似于 654
- c - 逐像素模糊 c 中的图像 - 特殊情况
- ios - 没有名为“ChatInboxDelegate”类的类型或协议
- python - 如何为以下 Python 函数编写文档字符串?
- jquery - Fullcalendar Scheduler - 如何让列边框线显示?
- android - 来自 Android 的 Firebase 复杂查询导致错误
- go - 在 Jenkins 中构建的路径名不正确
- react-native - 如何实现 React Native Password Show Hide 无副作用
- azure - 将 Application Insights 遥测处理器添加到 Azure 函数