Fixed #6181 - Document `django.views.decorators.http` - thanks adamv for the patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@15064 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
c00c377e54
commit
ee5fb7d18c
|
@ -91,7 +91,8 @@ The view layer
|
||||||
* **The basics:**
|
* **The basics:**
|
||||||
:doc:`URLconfs <topics/http/urls>` |
|
:doc:`URLconfs <topics/http/urls>` |
|
||||||
:doc:`View functions <topics/http/views>` |
|
:doc:`View functions <topics/http/views>` |
|
||||||
:doc:`Shortcuts <topics/http/shortcuts>`
|
:doc:`Shortcuts <topics/http/shortcuts>` |
|
||||||
|
:doc:`Decorators <topics/http/decorators>`
|
||||||
|
|
||||||
* **Reference:**
|
* **Reference:**
|
||||||
:doc:`Request/response objects <ref/request-response>` |
|
:doc:`Request/response objects <ref/request-response>` |
|
||||||
|
|
|
@ -98,6 +98,9 @@ compress content bodies less than 200 bytes long, when the response code is
|
||||||
something other than 200, JavaScript files (for IE compatibility), or
|
something other than 200, JavaScript files (for IE compatibility), or
|
||||||
responses that have the ``Content-Encoding`` header already specified.
|
responses that have the ``Content-Encoding`` header already specified.
|
||||||
|
|
||||||
|
GZip compression can be applied to individual views using the
|
||||||
|
:func:`~django.views.decorators.http.gzip_page()` decorator.
|
||||||
|
|
||||||
Conditional GET middleware
|
Conditional GET middleware
|
||||||
--------------------------
|
--------------------------
|
||||||
|
|
||||||
|
|
|
@ -950,6 +950,8 @@ exist to instruct upstream caches to differ their cache contents depending on
|
||||||
designated variables, and to tell caching mechanisms not to cache particular
|
designated variables, and to tell caching mechanisms not to cache particular
|
||||||
pages. We'll look at some of these headers in the sections that follow.
|
pages. We'll look at some of these headers in the sections that follow.
|
||||||
|
|
||||||
|
.. _using-vary-headers:
|
||||||
|
|
||||||
Using Vary headers
|
Using Vary headers
|
||||||
==================
|
==================
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,71 @@
|
||||||
|
===============
|
||||||
|
View Decorators
|
||||||
|
===============
|
||||||
|
|
||||||
|
.. currentmodule:: django.views.decorators.http
|
||||||
|
|
||||||
|
Django provides several decorators that can be applied to views to support
|
||||||
|
various HTTP features.
|
||||||
|
|
||||||
|
Allowed HTTP Methods
|
||||||
|
====================
|
||||||
|
|
||||||
|
.. function:: require_http_methods(request_method_list)
|
||||||
|
|
||||||
|
This decorator is used to make a view only accept particular request methods.
|
||||||
|
Usage::
|
||||||
|
|
||||||
|
from django.views.decorators.http import require_http_methods
|
||||||
|
@require_http_methods(["GET", "POST"])
|
||||||
|
def my_view(request):
|
||||||
|
# I can assume now that only GET or POST requests make it this far
|
||||||
|
# ...
|
||||||
|
pass
|
||||||
|
|
||||||
|
Note that request methods should be in uppercase.
|
||||||
|
|
||||||
|
.. function:: require_GET()
|
||||||
|
|
||||||
|
Decorator to require that a view only accept the GET method.
|
||||||
|
|
||||||
|
.. function:: require_POST()
|
||||||
|
|
||||||
|
Decorator to require that a view only accept the POST method.
|
||||||
|
|
||||||
|
Conditional view processing
|
||||||
|
===========================
|
||||||
|
|
||||||
|
.. function:: condition(etag_func=None, last_modified_func=None)
|
||||||
|
|
||||||
|
.. function:: etag(etag_func)
|
||||||
|
|
||||||
|
.. function:: last_modified(last_modified_func)
|
||||||
|
|
||||||
|
These decorators can be used to generate ``ETag`` and ``Last-Modified``
|
||||||
|
headers; see
|
||||||
|
:doc:`conditional view processing </topics/conditional-view-processing>`.
|
||||||
|
|
||||||
|
.. currentmodule:: django.views.decorators.http
|
||||||
|
|
||||||
|
GZip Compression
|
||||||
|
================
|
||||||
|
|
||||||
|
.. function:: gzip_page()
|
||||||
|
|
||||||
|
This decorator compresses content if the browser allows gzip compression.
|
||||||
|
It sets the ``Vary`` header accordingly, so that caches will base their
|
||||||
|
storage on the ``Accept-Encoding`` header.
|
||||||
|
|
||||||
|
.. currentmodule:: django.views.decorators.vary
|
||||||
|
|
||||||
|
Vary Headers
|
||||||
|
============
|
||||||
|
|
||||||
|
The ``Vary`` header defines which request headers a cache mechanism should take
|
||||||
|
into account when building its cache key.
|
||||||
|
|
||||||
|
.. function:: vary_on_cookie(func)
|
||||||
|
|
||||||
|
.. function:: vary_on_headers(*headers)
|
||||||
|
|
||||||
|
See :ref:`using vary headers <using-vary-headers>`.
|
|
@ -8,6 +8,7 @@ Information on handling HTTP requests in Django:
|
||||||
|
|
||||||
urls
|
urls
|
||||||
views
|
views
|
||||||
|
decorators
|
||||||
file-uploads
|
file-uploads
|
||||||
shortcuts
|
shortcuts
|
||||||
generic-views
|
generic-views
|
||||||
|
|
Loading…
Reference in New Issue