[1.10.x] Refs #19705 -- Documented decorator ordering with @condition().

Backport of 9eb49af821 from master
This commit is contained in:
Kevin Christopher Henry 2016-10-13 19:52:18 -04:00 committed by Tim Graham
parent 91cc5fd4cc
commit 4045870781
1 changed files with 12 additions and 0 deletions

View File

@ -97,6 +97,18 @@ for your front page view::
def front_page(request, blog_id): def front_page(request, blog_id):
... ...
.. admonition:: Be careful with the order of decorators
When ``condition()`` returns a conditional response, any decorators below
it will be skipped and won't apply to the response. Therefore, any
decorators that need to apply to both the regular view response and a
conditional response must be above ``condition()``. In particular,
:func:`~django.views.decorators.vary.vary_on_cookie`,
:func:`~django.views.decorators.vary.vary_on_headers`, and
:func:`~django.views.decorators.cache.cache_control` should come first
because :rfc:`RFC 7232 <7232#section-4.1>` requires that the headers they
set be present on 304 responses.
Shortcuts for only computing one value Shortcuts for only computing one value
====================================== ======================================