[py3] Deprecated StrAndUnicode.
This mix-in is superseded by the @python_2_unicode_compatible decorator.
This commit is contained in:
parent
d4a0b27838
commit
4e68e86153
|
@ -8,6 +8,7 @@ try:
|
||||||
from urllib.parse import quote
|
from urllib.parse import quote
|
||||||
except ImportError: # Python 2
|
except ImportError: # Python 2
|
||||||
from urllib import quote
|
from urllib import quote
|
||||||
|
import warnings
|
||||||
|
|
||||||
from django.utils.functional import Promise
|
from django.utils.functional import Promise
|
||||||
from django.utils import six
|
from django.utils import six
|
||||||
|
@ -32,6 +33,12 @@ class StrAndUnicode(object):
|
||||||
Useful as a mix-in. If you support Python 2 and 3 with a single code base,
|
Useful as a mix-in. If you support Python 2 and 3 with a single code base,
|
||||||
you can inherit this mix-in and just define __unicode__.
|
you can inherit this mix-in and just define __unicode__.
|
||||||
"""
|
"""
|
||||||
|
def __init__(self, *args, **kwargs):
|
||||||
|
warnings.warn("StrAndUnicode is deprecated. Define a __str__ method "
|
||||||
|
"and apply the @python_2_unicode_compatible decorator "
|
||||||
|
"instead.", PendingDeprecationWarning, stacklevel=2)
|
||||||
|
super(StrAndUnicode, self).__init__(*args, **kwargs)
|
||||||
|
|
||||||
if six.PY3:
|
if six.PY3:
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.__unicode__()
|
return self.__unicode__()
|
||||||
|
|
|
@ -273,3 +273,10 @@ our own copy of ``simplejson``. You can safely change any use of
|
||||||
|
|
||||||
The :func:`~django.utils.itercompat.product` function has been deprecated. Use
|
The :func:`~django.utils.itercompat.product` function has been deprecated. Use
|
||||||
the built-in :func:`itertools.product` instead.
|
the built-in :func:`itertools.product` instead.
|
||||||
|
|
||||||
|
``django.utils.encoding.StrAndUnicode``
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
The :class:`~django.utils.encoding.StrAndUnicode` mix-in has been deprecated.
|
||||||
|
Define a ``__str__`` method and apply the
|
||||||
|
:func:`~django.utils.encoding.python_2_unicode_compatible` decorator instead.
|
||||||
|
|
Loading…
Reference in New Issue