[1.6.x] Fixed #21881 -- Clarify behavior of {% ssi %} template tag.

When using the `parsed` option, {% ssi %} has the same limitation
as {% include %}, namely that the rendering of the included
template is done separately.

Thanks to trac user nagyv for the report and to alextreme for
the patch.

Backport of 072fb923e1b2e39e85a4ed4569ee7cd94f26a0bb from master.
This commit is contained in:
Baptiste Mispelon 2014-02-23 12:00:24 +01:00
parent 23cbfc9a25
commit a36513c2b4

View File

@ -951,7 +951,7 @@ current page::
The first parameter of ``ssi`` can be a quoted literal or any other context
variable.
If the optional "parsed" parameter is given, the contents of the included
If the optional ``parsed`` parameter is given, the contents of the included
file are evaluated as template code, within the current context::
{% ssi '/home/html/ljworld.com/includes/right_generic.html' parsed %}
@ -960,6 +960,13 @@ Note that if you use ``{% ssi %}``, you'll need to define
:setting:`ALLOWED_INCLUDE_ROOTS` in your Django settings, as a security
measure.
.. note::
With the :ttag:`ssi` tag and the ``parsed`` parameter
there is no shared state between files -- each include is a completely
independent rendering process. This means it's not possible for example to
define blocks or alter the context in the current page using the included
file.
See also: :ttag:`{% include %}<include>`.
.. templatetag:: templatetag