我在表单选择框中有多个货币值(即£2,500
)。当表单呈现时虽然它保持£
不变,有没有办法将其转换为实际的英镑符号?
答案 0 :(得分:2)
如果我正确理解了您的问题,则问题是£
会自动由表单库转义,因此会显示为£
给用户而不是£。
你可以通过告诉django HTML代码是安全的并且不应该被转义(可能是XSS安全漏洞)来解决问题:
from django.utils.safestring import mark_safe
choices = (mark_safe('£ 2,500'), ...)
或者你也可以通过直接输入字符来避免使用转义序列(那些实体不是当前HTML规范的一部分,你应该简单地使用unicode):
# -*- coding: utf-8 -*-
choices = (u'£ 2,500', ...)
编码的注释必须是当前文件的第一行,告诉解释器您在源文件中使用了unicode编码。