Django View 返回在 html 模板中未正确表示的字符串

标签 django templates view

我正在使用的 View 将字符串返回到 html 模板。返回的字符串包含在模板中未正确表示的特殊字符。简单地说,从 View 返回的字符串可能如下所示:

test = "\"Foo bar\""
return render_to_response('index.html', {'test': test})

并显示在 html 模板中,如下所示:
& quot;Foo bar& quot;

如何修复编码以使其正确显示?

最佳答案

打印时使用 safe filter:

{{ test|safe }}

或者,在 View 中执行此操作:
from django.utils.safestring import mark_safe
test = mark_safe("\"Foo bar\"")

请注意,这样做是在告诉 Django 字符串的内容是安全的,不需要 HTML 转义。如果您打算放置任何可能来自用户的东西,那么这将使您容易受到 XSS 攻击,因此请谨慎使用。

关于Django View 返回在 html 模板中未正确表示的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/794232/

相关文章:

Android 根据 if 语句更改布局

django - 如何在django-analytical中使用通用的“analytical。*”标签

python - Django:如何根据表单输入将用户重定向到页面?

C++ 模板类

c++ - wchar_t 的模板特化

ios - 以编程方式添加 TextView

python - 访问主题的内容

python - 在 Django 中重新保存模型实例不起作用,但 update() 确实起作用

python - Django:如何使用values_list属性编写GET查询?

c++ - 成员数量可变的结构或类