for*_*ohn 4 html python django markdown
我正在用 Python 处理一个 Django 项目,并使用 markdown2 将一些 Markdown 文本转换为 HTML,但它似乎做得不好,或者我在代码中遗漏了一些东西。
在我的 views.py 文件中,我使用自定义函数从 Markdown 格式的 .md 文件中提取一些文本,并使用 markdown2 模块尝试将其传递给 HTML 模板,如下所示:
text = markdown2.markdown(util.get_entry(entry))
Run Code Online (Sandbox Code Playgroud)
但是在 HTML 中,如果我检查源代码应该呈现为
<h1>HTML</h1>
Run Code Online (Sandbox Code Playgroud)
我的代码中遗漏了什么吗?错误是在 HTML 模板上还是在我的 views.py 文件中?
提前致谢!
您可能已经在模板中渲染了内容:
{{ text }}Run Code Online (Sandbox Code Playgroud)
Django 会默认对内容进行转义,因此替换<为<等。
您可以使用|safe模板过滤器 [Django-doc]来防止这种情况:
{{ text|safe }}Run Code Online (Sandbox Code Playgroud)