Skip to content

Commit

Permalink
[1.5.x] Fixed #22167 -- Improved documentation on context processors
Browse files Browse the repository at this point in the history
Backport of e7ffba8 from master.
  • Loading branch information
m2w authored and mxsasha committed May 16, 2014
1 parent 5c65aa9 commit 220c09e
Showing 1 changed file with 9 additions and 5 deletions.
14 changes: 9 additions & 5 deletions docs/ref/templates/api.txt
Original file line number Diff line number Diff line change
Expand Up @@ -392,11 +392,11 @@ below.

.. admonition:: When context processors are applied

When you use ``RequestContext``, the variables you supply directly
are added first, followed any variables supplied by context
processors. This means that a context processor may overwrite a
variable you've supplied, so take care to avoid variable names
which overlap with those supplied by your context processors.
Context processors are applied *after* the context itself is processed.
This means that a context processor may overwrite variables you've
supplied to your ``Context`` or ``RequestContext``, so take care
to avoid variable names that overlap with those supplied by your
context processors.

Also, you can give ``RequestContext`` a list of additional processors, using the
optional, third positional argument, ``processors``. In this example, the
Expand Down Expand Up @@ -432,6 +432,10 @@ optional, third positional argument, ``processors``. In this example, the
the same as a call to :func:`~django.shortcuts.render_to_response()` with a
context_instance argument that forces the use of a ``RequestContext``.

Note that the contents of a supplied dictionary (``my_data_dictionary``
in this example) will take precedence over any variables supplied by
context processors or the ``RequestContext``.

Here's what each of the default processors does:

django.contrib.auth.context_processors.auth
Expand Down

0 comments on commit 220c09e

Please sign in to comment.