【发布时间】:2019-09-11 18:10:10
【问题描述】:
我正在使用以下代码从 postgres 数据库中检索数据:
values = ('foo', 'bar', 'group')
FooBar.objects.order_by('-id').extra(select={'group': "'stackoverflow'"}).values(*values)
代码运行良好,但我听说使用 extra 并不可取,甚至 django 文档都说“将此方法用作最后的手段”。那么问题是如何避免使用extra 来检索数据?
【问题讨论】:
-
在查询中这样做有什么意义?您只是在选择一个常量字符串。
-
@DanielRoseman 我需要根据 API 要求在查询集中有这个常量。而且它必须是一个查询集对象,因为 DRF 分页不接受非查询集对象。
标签: django orm django-orm