Fixed #8376 -- Use request.path and request.path_info at the right moments when
serving data in the flatpage middleware. Patch from jcassee. git-svn-id: http://code.djangoproject.com/svn/django/trunk@8457 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
1e1f7c58bc
commit
d05d724165
|
@ -7,7 +7,7 @@ class FlatpageFallbackMiddleware(object):
|
||||||
if response.status_code != 404:
|
if response.status_code != 404:
|
||||||
return response # No need to check for a flatpage for non-404 responses.
|
return response # No need to check for a flatpage for non-404 responses.
|
||||||
try:
|
try:
|
||||||
return flatpage(request, request.path)
|
return flatpage(request, request.path_info)
|
||||||
# Return the original response if any errors happened. Because this
|
# Return the original response if any errors happened. Because this
|
||||||
# is a middleware, we can't assume the errors will be caught elsewhere.
|
# is a middleware, we can't assume the errors will be caught elsewhere.
|
||||||
except Http404:
|
except Http404:
|
||||||
|
|
|
@ -20,7 +20,7 @@ def flatpage(request, url):
|
||||||
`flatpages.flatpages` object
|
`flatpages.flatpages` object
|
||||||
"""
|
"""
|
||||||
if not url.endswith('/') and settings.APPEND_SLASH:
|
if not url.endswith('/') and settings.APPEND_SLASH:
|
||||||
return HttpResponseRedirect(url + "/")
|
return HttpResponseRedirect("%s/" % request.path)
|
||||||
if not url.startswith('/'):
|
if not url.startswith('/'):
|
||||||
url = "/" + url
|
url = "/" + url
|
||||||
f = get_object_or_404(FlatPage, url__exact=url, sites__id__exact=settings.SITE_ID)
|
f = get_object_or_404(FlatPage, url__exact=url, sites__id__exact=settings.SITE_ID)
|
||||||
|
|
Loading…
Reference in New Issue