Consistent imports for parse_qsl function, avoiding the `PendingDeprecationWarning` under Python 2.6 and later

git-svn-id: http://code.djangoproject.com/svn/django/trunk@14297 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Luke Plant 2010-10-20 13:07:06 +00:00
parent 40a2a1c59d
commit 6be00774a4
2 changed files with 16 additions and 3 deletions

View File

@ -16,8 +16,15 @@ See docs/cache.txt for information on the public API.
""" """
try: try:
from urlparse import parse_qsl # The mod_python version is more efficient, so try importing it first.
from mod_python.util import parse_qsl
except ImportError: except ImportError:
try:
# Python 2.6 and greater
from urlparse import parse_qsl
except ImportError:
# Python 2.5, 2.4. Works on Python 2.6 but raises
# PendingDeprecationWarning
from cgi import parse_qsl from cgi import parse_qsl
from django.conf import settings from django.conf import settings

View File

@ -10,6 +10,12 @@ try:
# The mod_python version is more efficient, so try importing it first. # The mod_python version is more efficient, so try importing it first.
from mod_python.util import parse_qsl from mod_python.util import parse_qsl
except ImportError: except ImportError:
try:
# Python 2.6 and greater
from urlparse import parse_qsl
except ImportError:
# Python 2.5, 2.4. Works on Python 2.6 but raises
# PendingDeprecationWarning
from cgi import parse_qsl from cgi import parse_qsl
from django.utils.datastructures import MultiValueDict, ImmutableList from django.utils.datastructures import MultiValueDict, ImmutableList