1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- =====================
- django.contrib.markup
- =====================
- .. module:: django.contrib.markup
- :synopsis: A collection of template filters that implement common markup languages.
- .. deprecated:: 1.5
- This module has been deprecated.
- Django provides template filters that implement the following markup
- languages:
- * ``textile`` -- implements `Textile`_ -- requires `PyTextile`_
- * ``markdown`` -- implements `Markdown`_ -- requires `Python-markdown`_ (>=2.1)
- * ``restructuredtext`` -- implements `reST (reStructured Text)`_
- -- requires `doc-utils`_
- In each case, the filter expects formatted markup as a string and
- returns a string representing the marked-up text. For example, the
- ``textile`` filter converts text that is marked-up in Textile format
- to HTML.
- To activate these filters, add ``'django.contrib.markup'`` to your
- :setting:`INSTALLED_APPS` setting. Once you've done that, use
- ``{% load markup %}`` in a template, and you'll have access to these filters.
- For more documentation, read the source code in
- :file:`django/contrib/markup/templatetags/markup.py`.
- .. warning::
- The output of markup filters is marked "safe" and will not be escaped when
- rendered in a template. Always be careful to sanitize your inputs and make
- sure you are not leaving yourself vulnerable to cross-site scripting or
- other types of attacks.
- .. _Textile: http://en.wikipedia.org/wiki/Textile_%28markup_language%29
- .. _Markdown: http://en.wikipedia.org/wiki/Markdown
- .. _reST (reStructured Text): http://en.wikipedia.org/wiki/ReStructuredText
- .. _PyTextile: http://loopcore.com/python-textile/
- .. _Python-markdown: http://pypi.python.org/pypi/Markdown
- .. _doc-utils: http://docutils.sf.net/
- reStructured Text
- -----------------
- When using the ``restructuredtext`` markup filter you can define a
- :setting:`RESTRUCTUREDTEXT_FILTER_SETTINGS` in your django settings to
- override the default writer settings. See the `restructuredtext writer
- settings`_ for details on what these settings are.
- .. warning::
- reStructured Text has features that allow raw HTML to be included, and that
- allow arbitrary files to be included. These can lead to XSS vulnerabilities
- and leaking of private information. It is your responsibility to check the
- features of this library and configure appropriately to avoid this. See the
- `Deploying Docutils Securely
- <http://docutils.sourceforge.net/docs/howto/security.html>`_ documentation.
- .. _restructuredtext writer settings: http://docutils.sourceforge.net/docs/user/config.html#html4css1-writer
- Markdown
- --------
- The Python Markdown library supports options named "safe_mode" and
- "enable_attributes". Both relate to the security of the output. To enable both
- options in tandem, the markdown filter supports the "safe" argument::
- {{ markdown_content_var|markdown:"safe" }}
- .. warning::
- Versions of the Python-Markdown library prior to 2.1 do not support the
- optional disabling of attributes. This is a security flaw. Therefore,
- ``django.contrib.markup`` has dropped support for versions of
- Python-Markdown < 2.1 in Django 1.5.
|