我试图从 char 字段中获取前五个字符,但只针对查询集中的一个字段,但我不断收到各种错误。在 View 中是否有有效的方法来执行此操作?
我正在尝试的代码:
var = Model.objects.values('field1', 'field2'[:5], 'field3')
最佳答案
您可以使用 Substr
用 field2
的前 5 个字母注释查询集功能:
from django.db.models.functions import Substr
queryset = Model.objects.all()
queryset = queryset.annotate(field2_5=Substr('field2', 1, 5))
然后,在值中使用带注释的字段field2_5
:
values = queryset.values('field1', 'field2_5', 'field3')
关于python - Django 切片查询集中的单个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41105294/