Django 聚合转义 unicode 字符串?
Django aggregation escapes unicode strings?
我尝试在具有 unicode 文本的数据库上使用聚合,它显示了具有另一次编码的 unicode 字符的 unicode 对象。聚合后如何显示unicode文本?
>>> from apps.person.models import Person
>>> from django.db.models import Min
>>> for p in Person.objects.all()[:1]: print(p.full_name)
...
15 чоловік
>>> Person.objects.aggregate(Min('full_name'))
{'full_name__min': u'15 \u0447\u043e\u043b\u043e\u0432\u0456\u043a'}
这里没有特定于聚合的内容。在第一行中,您正在调用 print
,但在第二行中,您只是让 shell 输出聚合调用的结果,它始终使用 repr
格式。这会起作用:
result = Person.objects.aggregate(Min('full_name'))
print result['full_name__min']
我尝试在具有 unicode 文本的数据库上使用聚合,它显示了具有另一次编码的 unicode 字符的 unicode 对象。聚合后如何显示unicode文本?
>>> from apps.person.models import Person
>>> from django.db.models import Min
>>> for p in Person.objects.all()[:1]: print(p.full_name)
...
15 чоловік
>>> Person.objects.aggregate(Min('full_name'))
{'full_name__min': u'15 \u0447\u043e\u043b\u043e\u0432\u0456\u043a'}
这里没有特定于聚合的内容。在第一行中,您正在调用 print
,但在第二行中,您只是让 shell 输出聚合调用的结果,它始终使用 repr
格式。这会起作用:
result = Person.objects.aggregate(Min('full_name'))
print result['full_name__min']