Не рекомендуется, начиная с версии 1.5: This module has been deprecated.
Django предоставляет шаблонные фильтры, реализующие следующие языки разметки:
markdown - реализация Markdown - требует установки Python-markdown (>=2.1)
restructuredtext - реализация reST (reStructured Text) - требует установки doc-utils
В каждом из представленных случаев фильтр ожидает получить соответственно отформатированную строку и возвращает строку размеченного текста. Например, фильтр textile преобразует текст формата Textile в HTML.
Для активации этих фильтров добавьте 'django.contrib.markup' в настройки INSTALLED_APPS. После того как это сделано, используйте в шаблоне {% load markup %}, чтобы получить доступ к фильтру. Для получения дополнительных сведений читайте django/contrib/markup/templatetags/markup.py.
Предупреждение
На выходе markup фильтр отмечает строки как “безопасные” и не экранирует символы HTML при выводе шаблона. Всегда будьте осторожны с фильтрами и проверяйте не оставляют ли они возможности проведения различных видов межсайтовых атак.
Когда вы используете фильтр restructuredtext вы должны определить в настройках RESTRUCTUREDTEXT_FILTER_SETTINGS, чтобы переопределить параметры, установленные по-умолчанию. Для получения подробной информации обратитесь к странице restructuredtext writer settings.
Предупреждение
reStructured Text имеет свои особенности, благодаря которым возможно включение неэкранированных символов HTML и произвольных файлов. Это может привести к XSS уязвимости и потере приватной информации. Ответственность за проверку возможностей библиотеки и создание корректных настроек во избежание получения уязвимостей ложится на ваши плечи. Обязательно просмотрите следующую документацию: Deploying Docutils Securely .
Библиотека Python Markdown поддерживает опции “safe_mode” и “enable_attributes”. Обе эти опции имеют прямое отношение к безопасности. Для их совместного использования markdown поддерживание аргумент “safe”:
{{ markdown_content_var|markdown:"safe" }}
Предупреждение
Python-Markdown до версии 2.1 не поддерживает опциональное отключение опций. Это брешь в безопасности. Поэтому поддержка Python-Markdown < 2.1 была прекращена в Django 1.5.
Mar 30, 2016