也许这不是好的做法,但我想知道是否可以使用其字符串值解码整数字段值 我知道我应该有一个特定的模型作为同义词库链接......
我有一个模型我的模型 例如,我生成一个 QuerySet mymodel.objects.values('id','var2','var3','var4'( var3 是"是/否"答案的整数 (0/1(
是否可以用"是"或"否"而不是其整数值填充我的 QuerySet?
您可以对其进行注释,例如:
from django.db.models import Case, CharField, Value, When
QuerySet.objects.values('id', 'var2', 'var4',
new_var3=Case(
When(var3=1, then=Value('Yes')),
default=Value('No'),
output_field=CharField(),
)
)
请注意,您应该重命名变量。
话虽如此,使用.values(..)
或.values_list(..)
进行序列化并不是一个好主意。此外,它将对数据库执行文本处理,这通常不是数据库的核心任务。通常使用序列化程序[drf-doc] 来实现这一点。