mirror of https://github.com/django/django.git
Restricted a workaround for a bug in Python to the affected versions.
This commit is contained in:
parent
e1bafdbffa
commit
679af4058d
|
@ -2,12 +2,16 @@
|
||||||
|
|
||||||
from functools import wraps, update_wrapper, WRAPPER_ASSIGNMENTS
|
from functools import wraps, update_wrapper, WRAPPER_ASSIGNMENTS
|
||||||
|
|
||||||
|
from django.utils import six
|
||||||
|
|
||||||
|
|
||||||
class classonlymethod(classmethod):
|
class classonlymethod(classmethod):
|
||||||
def __get__(self, instance, owner):
|
def __get__(self, instance, owner):
|
||||||
if instance is not None:
|
if instance is not None:
|
||||||
raise AttributeError("This method is available only on the view class.")
|
raise AttributeError("This method is available only on the view class.")
|
||||||
return super(classonlymethod, self).__get__(instance, owner)
|
return super(classonlymethod, self).__get__(instance, owner)
|
||||||
|
|
||||||
|
|
||||||
def method_decorator(decorator):
|
def method_decorator(decorator):
|
||||||
"""
|
"""
|
||||||
Converts a function decorator into a method decorator
|
Converts a function decorator into a method decorator
|
||||||
|
@ -68,9 +72,13 @@ def decorator_from_middleware(middleware_class):
|
||||||
def available_attrs(fn):
|
def available_attrs(fn):
|
||||||
"""
|
"""
|
||||||
Return the list of functools-wrappable attributes on a callable.
|
Return the list of functools-wrappable attributes on a callable.
|
||||||
This is required as a workaround for http://bugs.python.org/issue3445.
|
This is required as a workaround for http://bugs.python.org/issue3445
|
||||||
|
under Python 2.
|
||||||
"""
|
"""
|
||||||
return tuple(a for a in WRAPPER_ASSIGNMENTS if hasattr(fn, a))
|
if six.PY3:
|
||||||
|
return WRAPPER_ASSIGNMENTS
|
||||||
|
else:
|
||||||
|
return tuple(a for a in WRAPPER_ASSIGNMENTS if hasattr(fn, a))
|
||||||
|
|
||||||
|
|
||||||
def make_middleware_decorator(middleware_class):
|
def make_middleware_decorator(middleware_class):
|
||||||
|
|
Loading…
Reference in New Issue