Fixed #15840 -- Wrapped inner function of the condition decorator with functools.wraps to follow best practices. Thanks, zsiciarz.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17470 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
49288f8388
commit
4b71c9998e
|
@ -74,6 +74,7 @@ def condition(etag_func=None, last_modified_func=None):
|
||||||
called.
|
called.
|
||||||
"""
|
"""
|
||||||
def decorator(func):
|
def decorator(func):
|
||||||
|
@wraps(func, assigned=available_attrs(func))
|
||||||
def inner(request, *args, **kwargs):
|
def inner(request, *args, **kwargs):
|
||||||
# Get HTTP request headers
|
# Get HTTP request headers
|
||||||
if_modified_since = request.META.get("HTTP_IF_MODIFIED_SINCE")
|
if_modified_since = request.META.get("HTTP_IF_MODIFIED_SINCE")
|
||||||
|
|
|
@ -11,7 +11,7 @@ from django.utils.functional import allow_lazy, lazy, memoize
|
||||||
from django.utils.unittest import TestCase
|
from django.utils.unittest import TestCase
|
||||||
from django.views.decorators.cache import cache_page, never_cache, cache_control
|
from django.views.decorators.cache import cache_page, never_cache, cache_control
|
||||||
from django.views.decorators.clickjacking import xframe_options_deny, xframe_options_sameorigin, xframe_options_exempt
|
from django.views.decorators.clickjacking import xframe_options_deny, xframe_options_sameorigin, xframe_options_exempt
|
||||||
from django.views.decorators.http import require_http_methods, require_GET, require_POST, require_safe
|
from django.views.decorators.http import require_http_methods, require_GET, require_POST, require_safe, condition
|
||||||
from django.views.decorators.vary import vary_on_headers, vary_on_cookie
|
from django.views.decorators.vary import vary_on_headers, vary_on_cookie
|
||||||
|
|
||||||
|
|
||||||
|
@ -38,6 +38,7 @@ full_decorator = compose(
|
||||||
require_GET,
|
require_GET,
|
||||||
require_POST,
|
require_POST,
|
||||||
require_safe,
|
require_safe,
|
||||||
|
condition(lambda r: None, lambda r: None),
|
||||||
|
|
||||||
# django.views.decorators.vary
|
# django.views.decorators.vary
|
||||||
vary_on_headers('Accept-language'),
|
vary_on_headers('Accept-language'),
|
||||||
|
|
Loading…
Reference in New Issue