我使用以下模型来存储有关页面的信息:
class Page(models.Model):
title = models.TextField(blank = False, null = False)
新数据保存正确,我在那里保存 Unicode 数据(很多非 ASCII 标题)。 但是当我执行查询时:
page = Page.objects.filter(id = 1)
page.title 看起来很奇怪:
u'\u042e\u0449\u0435\u043d\u043a\u043e'
我可能做错了什么? 谢谢。
更新:真的,当我打印 page.title 时 - 它看起来不错。 但是我需要将它转储到 JSON,所以在这样的代码之后:
dumps({'title': page.title})
一切看起来都很糟糕。
更新 2:感谢大家指出这个行为是正确的。但是 unicode 转义字符串太长了。我能以某种方式将它们翻译成 utf-8 吗?
最佳答案
你没有做错任何事。您是否尝试过打印(或在网页中输出)?
In [1]: l = u'\u042e\u0449\u0435\u043d\u043a\u043e'
In [2]: print l
Ющенко
关于python - Django ORM 和 Unicode 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2280855/