Использование django-bleach . Это предоставляет вам шаблонный шаблон bleach
, который позволяет отфильтровывать только те теги, которые вы хотите:
{% load bleach_tags %}
{{ mymodel.my_html_field|bleach }}
Хитрость заключается в том, чтобы настроить редактор так, чтобы он создавал те же теги, которые вы хотите «пропустить» в настройках отбеливателя.
Вот пример моих настроек отбеливателя:
# Which HTML tags are allowed
BLEACH_ALLOWED_TAGS = ['p', 'h3', 'h4', 'em', 'strong', 'a', 'ul', 'ol', 'li', 'blockquote']
# Which HTML attributes are allowed
BLEACH_ALLOWED_ATTRIBUTES = ['href', 'title', 'name']
BLEACH_STRIP_TAGS = True
Затем вы можете настроить TinyMCE (или любой используемый вами редактор WYSIWYG) только для кнопок, которые создают разрешенные теги.