在Django模板中转义特殊字符

2 投票
1 回答
2945 浏览
提问于 2025-04-16 06:40

我正在生成一个包含字母、数字和特殊字符的密码,特殊字符包括 ('¿"&$%/\>]{}(=?)*@!<-_¡+[')。我需要在模板中处理这些特殊字符,就像处理ASCII符号一样。我生成了一个这样的值列表:

['0iw0Vqds)*\xc2Ni1P', '<gFLbKi}55(dN[R', '5G<E\\3}+vz72vu{', 'q3ojs$S33rQW$vs', 'IhAV$@3H3uNx\xbfOI', 'uA>>u\\g\xa1vf0\xc2o4t', 'siNyC$JX46bDXZ\xc2', 'R<8\xa1Y{\\]{Wcd/G>', 'D()SuvqdokB\xc2tcR', 'z31LPP{[$n{6_p\xc2']

在我的模板中,我这样做:

{% for var in password_list %}
    {{var|escape}} 
{% endfor %}

我在views.py中使用的是utf-8编码(# -- coding: UTF-8 --)。我尝试过使用 {{var|escape}}{{var|escape|safe}},但是在这种情况下,模板只显示了列表中的第三个元素(q3ojs$S33rQW$vs)。

我该怎么办呢??

提前谢谢你们!

1 个回答

3

如果你打算使用 ¿¡ 这些符号,那么你需要用 unicode 而不是 str

Python中的Unicode,完全解密

撰写回答