【发布时间】:2021-03-30 22:38:57
【问题描述】:
如图所示,我使用 {{options|safe}} 在我的 django 3.0 polls 应用程序中渲染选项,即使它是这样渲染的,我不知道如何删除
来自渲染字符串的标签,提前感谢您的帮助
regarding tag error
【问题讨论】:
标签: django django-views django-templates ckeditor4.x django-ckeditor
如图所示,我使用 {{options|safe}} 在我的 django 3.0 polls 应用程序中渲染选项,即使它是这样渲染的,我不知道如何删除
来自渲染字符串的标签,提前感谢您的帮助
regarding tag error
【问题讨论】:
标签: django django-views django-templates ckeditor4.x django-ckeditor
要删除标签,我建议使用 Mozilla 的 bleach 库。
为了只在前端移除标签,而不是数据本身,您可以轻松创建custom template filter 并清理其中的标签。
另一个很酷的想法是列出可以使用的已启用 HTML 标记(例如使用 <b>...</b> 使文本变为粗体),然后将输入呈现为有效的 html:
{{ options|remove_tags|safe }}
自定义模板过滤器示例:
@register.filter
def remove_tags(value):
return bleach.clean(value, tags=["b", "i"])
【讨论】: