【发布时间】:2015-08-12 10:07:59
【问题描述】:
我正在为一个法语应用程序编写一个自定义 Django 模板标签。我的模板标签接受一个字符串参数:
{% mytag "Hello" %}
完美运行,但在尝试将一些非 ASCII 字符放入值时失败。
你如何让这个东西工作:
{% mytag "Êtes-vous à Paris ?" %}
我收到了这个错误:
'ascii' 编解码器无法对位置 0 中的字符 u'\xca' 进行编码:序数 不在范围内(128)
Unicode 错误提示
无法编码/解码的字符串是:Êtes-v
提前非常感谢!
编辑: Python 版本为 2.7。这是标签的代码:
@register.simple_tag(takes_context=True)
def mytag(context, my_var):
return "Here it is: {my_var}".format(my_var=my_var)
【问题讨论】:
-
哪个python版本?你能告诉我们标签的代码吗?
-
Python 版本为 2.7。在初始帖子中添加了标记代码。谢谢你的帮助……
-
已经在标签声明文件中添加了# -- coding: utf-8 --。好像 Django 不允许在标签中传递特殊字符:(
-
@danihp 请不要随意推荐。编码头用于源代码中的文字,与此问题无关。
标签: python django tags django-templates python-unicode