当我做标记(文字),没有漂白剂,我得到了想要的结果(生):
<p>blah</p>它正确地显示为:
blah其中,"p“标记被正确地呈现为段落块。
当我执行bleach.clean(markdown.markdown(文本))时,我得到(raw):
<p>blah</p>它不正确地显示为:
<p>blah</p>其中,"p“标记是文本的一部分,而不是HTML段落块。
发布于 2016-06-11 00:03:27
您需要将bleached HTML标记为安全。
from django.utils.safestring import mark_safe
...
return mark_safe(bleach.clean(markdown.markdown(text)))但是,也有姜戈漂白剂提供与Django和现成标签的集成,以便在Django中使用漂白剂。
{% load markdown_deux_tags bleach_tags %}
{{ view_user.profile.about|markdown:"user"|bleach }}在settings.py中,您可以告诉django漂白剂哪些标签是可以的。
BLEACH_ALLOWED_TAGS = ['h1', 'h2', 'p', 'b', 'i', 'strong', 'a']
BLEACH_ALLOWED_ATTRIBUTES = ['href', 'title', 'style']
BLEACH_ALLOWED_STYLES = ['font-family', 'font-weight']
BLEACH_STRIP_TAGS = True等。
https://stackoverflow.com/questions/37757474
复制相似问题