2012-02-04 68 views
-2

我在django以字符串形式返回的字段中有一些intl字符 - 如何将其转换回来以便在我的模板中显示?在模板中转换Django字符串

编辑澄清: 我在我的数据库字节串日本的一些文字:

“\ XE3 \ X83 \ X97 \ XE3 \ X83版权所有\ xA9 \ XE3 \ X82 \ XA4 \ XE3 \ X83 \ X90 \ XE3 \ X82 \ XB7 \ XE3 \ X83 \命苦\ XE3 \ X83 \ x9d \ XE3 \ X83 \的Xaa \ XE3 \ X82 \ XB7 \ XE3 \ X83 \命苦”

我想将其转换回 プライバシーポリシー”

(注:Django的没有这种方式保存在我的数据库 - 导入数据)

+0

这是什么意思?为什么你不能显示一个字节串?无论如何,Django仅在内部使用unicode,所以如果您以某种方式获取字节串,那是由于您自己的配置不当造成的。 – 2012-02-04 18:09:22

回答

1

这文字工作正常,我在shell:

>>> from django import template 
>>> s = '\xe3\x83\x97\xe3\x83\xa9\xe3\x82\xa4\xe3\x83\x90\xe3\x82\xb7\xe3\x83\xbc \xe3\x83\x9d\xe3\x83\xaa\xe3\x82\xb7\xe3\x83\xbc' 
>>> t = template.Template('{{ s }}') 
>>> print t.render(template.Context({'s': s})) 
プライバシー ポリシー 

,所以我不知道你在哪里遇到的问题。

+0

你说得对 - 我的数据库中字符串的编码存在问题 - 它返回一些十六进制转义字符和unicode转义字符的混合 – 2012-02-04 18:43:55