summaryrefslogtreecommitdiff
path: root/docs/topics/http
diff options
context:
space:
mode:
authorTimo Graham <timograham@gmail.com>2010-12-27 13:27:26 +0000
committerTimo Graham <timograham@gmail.com>2010-12-27 13:27:26 +0000
commitee5fb7d18c9e06b564e6947f63c18436a3c8b66c (patch)
tree75485d1e957331758cdf3041b98470f858902847 /docs/topics/http
parentc00c377e5402fcb658baff982cf908138974a2b5 (diff)
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
Diffstat (limited to 'docs/topics/http')
-rw-r--r--docs/topics/http/decorators.txt71
-rw-r--r--docs/topics/http/index.txt1
2 files changed, 72 insertions, 0 deletions
diff --git a/docs/topics/http/decorators.txt b/docs/topics/http/decorators.txt
new file mode 100644
index 0000000000..7bb62ae8f5
--- /dev/null
+++ b/docs/topics/http/decorators.txt
@@ -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>`.
diff --git a/docs/topics/http/index.txt b/docs/topics/http/index.txt
index 5ef776dd7b..0bcb3a2d48 100644
--- a/docs/topics/http/index.txt
+++ b/docs/topics/http/index.txt
@@ -8,6 +8,7 @@ Information on handling HTTP requests in Django:
urls
views
+ decorators
file-uploads
shortcuts
generic-views