mirror of
https://github.com/django/django.git
synced 2024-12-01 15:42:04 +01:00
Fixed #8381 -- Fixed a problem with appending slashes in the common middleware
when SCRIPT_NAME contains something other than '/'. Patch from jcassee. Also fixed the middleware tests to work with this patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8456 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
b9407b26df
commit
1e1f7c58bc
@ -54,7 +54,7 @@ class CommonMiddleware(object):
|
|||||||
# trailing slash and there is no pattern for the current path
|
# trailing slash and there is no pattern for the current path
|
||||||
if settings.APPEND_SLASH and (not old_url[1].endswith('/')):
|
if settings.APPEND_SLASH and (not old_url[1].endswith('/')):
|
||||||
try:
|
try:
|
||||||
urlresolvers.resolve(request.path)
|
urlresolvers.resolve(request.path_info)
|
||||||
except urlresolvers.Resolver404:
|
except urlresolvers.Resolver404:
|
||||||
new_url[1] = new_url[1] + '/'
|
new_url[1] = new_url[1] + '/'
|
||||||
if settings.DEBUG and request.method == 'POST':
|
if settings.DEBUG and request.method == 'POST':
|
||||||
@ -69,7 +69,7 @@ class CommonMiddleware(object):
|
|||||||
if new_url != old_url:
|
if new_url != old_url:
|
||||||
# Redirect if the target url exists
|
# Redirect if the target url exists
|
||||||
try:
|
try:
|
||||||
urlresolvers.resolve(new_url[1])
|
urlresolvers.resolve("%s/" % request.path_info)
|
||||||
except urlresolvers.Resolver404:
|
except urlresolvers.Resolver404:
|
||||||
pass
|
pass
|
||||||
else:
|
else:
|
||||||
|
@ -12,7 +12,7 @@ class CommonMiddlewareTest(TestCase):
|
|||||||
'SERVER_NAME': 'testserver',
|
'SERVER_NAME': 'testserver',
|
||||||
'SERVER_PORT': 80,
|
'SERVER_PORT': 80,
|
||||||
}
|
}
|
||||||
request.path = "/middleware/%s" % path
|
request.path = request.path_info = "/middleware/%s" % path
|
||||||
return request
|
return request
|
||||||
|
|
||||||
def test_append_slash_have_slash(self):
|
def test_append_slash_have_slash(self):
|
||||||
|
Loading…
Reference in New Issue
Block a user