diff options
| author | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2008-07-19 19:37:55 +0000 |
|---|---|---|
| committer | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2008-07-19 19:37:55 +0000 |
| commit | 189c704ae64691ab6bbb8ffb3adee73ffd4105fe (patch) | |
| tree | 6d757468b4677a8428437d3bdd77231ec6352fa5 /django/core | |
| parent | be367501633889fdd66f4a56e646868e4ba78f4a (diff) | |
Revert [7991] - [7993]. I was committing from the wrong branch. Sorry 'bout
that, folks. :-(
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7995 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'django/core')
| -rw-r--r-- | django/core/handlers/base.py | 22 | ||||
| -rw-r--r-- | django/core/handlers/modpython.py | 13 | ||||
| -rw-r--r-- | django/core/handlers/wsgi.py | 11 | ||||
| -rw-r--r-- | django/core/urlresolvers.py | 5 |
4 files changed, 8 insertions, 43 deletions
diff --git a/django/core/handlers/base.py b/django/core/handlers/base.py index c2bcad10ff..f63b28dc66 100644 --- a/django/core/handlers/base.py +++ b/django/core/handlers/base.py @@ -3,7 +3,6 @@ import sys from django import http from django.core import signals from django.dispatch import dispatcher -from django.utils.encoding import force_unicode class BaseHandler(object): # Changes that are always applied to a response (in this order). @@ -74,8 +73,7 @@ class BaseHandler(object): resolver = urlresolvers.RegexURLResolver(r'^/', urlconf) try: - callback, callback_args, callback_kwargs = resolver.resolve( - request.path_info) + callback, callback_args, callback_kwargs = resolver.resolve(request.path) # Apply view middleware for middleware_method in self._view_middleware: @@ -172,21 +170,3 @@ class BaseHandler(object): response = func(request, response) return response -def get_script_name(environ): - """ - Returns the equivalent of the HTTP request's SCRIPT_NAME environment - variable. If Apache mod_rewrite has been used, returns what would have been - the script name prior to any rewriting (so it's the script name as seen - from the client's perspective). - - Note: this isn't used by the mod_python handler, since the equivalent of - SCRIPT_NAME isn't available there. - """ - if not environ.get('DJANGO_USE_POST_REWRITE'): - # If mod_rewrite had a whack at the URL, Apache set SCRIPT_URL to - # SCRIPT_NAME before applying any rewrites. - script_url = force_unicode(environ.get('SCRIPT_URL', '')) - if script_url: - return script_url - return force_unicode(environ.get('SCRIPT_NAME', '')) - diff --git a/django/core/handlers/modpython.py b/django/core/handlers/modpython.py index a2d9db8ba4..332df6f54c 100644 --- a/django/core/handlers/modpython.py +++ b/django/core/handlers/modpython.py @@ -16,15 +16,6 @@ class ModPythonRequest(http.HttpRequest): def __init__(self, req): self._req = req self.path = force_unicode(req.uri) - root = req.get_options().get('django.root', '') - self._django_root = root - # req.path_info isn't necessarily computed correctly in all - # circumstances (it's out of mod_python's control a bit), so we use - # req.uri and some string manipulations to get the right value. - if root and req.uri.startswith(root): - self.path_info = force_unicode(req.uri[len(root):]) - else: - self.path_info = self.path def __repr__(self): # Since this is called as part of error handling, we need to be very @@ -109,7 +100,7 @@ class ModPythonRequest(http.HttpRequest): 'CONTENT_LENGTH': self._req.clength, # This may be wrong 'CONTENT_TYPE': self._req.content_type, # This may be wrong 'GATEWAY_INTERFACE': 'CGI/1.1', - 'PATH_INFO': self.path_info, + 'PATH_INFO': self._req.path_info, 'PATH_TRANSLATED': None, # Not supported 'QUERY_STRING': self._req.args, 'REMOTE_ADDR': self._req.connection.remote_ip, @@ -117,7 +108,7 @@ class ModPythonRequest(http.HttpRequest): 'REMOTE_IDENT': self._req.connection.remote_logname, 'REMOTE_USER': self._req.user, 'REQUEST_METHOD': self._req.method, - 'SCRIPT_NAME': self._django_root, + 'SCRIPT_NAME': None, # Not supported 'SERVER_NAME': self._req.server.server_hostname, 'SERVER_PORT': self._req.server.port, 'SERVER_PROTOCOL': self._req.protocol, diff --git a/django/core/handlers/wsgi.py b/django/core/handlers/wsgi.py index 15708c9a91..795f139042 100644 --- a/django/core/handlers/wsgi.py +++ b/django/core/handlers/wsgi.py @@ -7,7 +7,7 @@ except ImportError: from django import http from django.core import signals -from django.core.handlers import base +from django.core.handlers.base import BaseHandler from django.dispatch import dispatcher from django.utils import datastructures from django.utils.encoding import force_unicode @@ -74,14 +74,9 @@ def safe_copyfileobj(fsrc, fdst, length=16*1024, size=0): class WSGIRequest(http.HttpRequest): def __init__(self, environ): - script_name = base.get_script_name() - path_info = force_unicode(environ.get('PATH_INFO', '/')) self.environ = environ - self.path_info = path_info - self.path = '%s%s' % (script_name, path_info) + self.path = force_unicode(environ['PATH_INFO']) self.META = environ - self.META['PATH_INFO'] = path_info - self.META['SCRIPT_NAME'] = script_name self.method = environ['REQUEST_METHOD'].upper() def __repr__(self): @@ -183,7 +178,7 @@ class WSGIRequest(http.HttpRequest): REQUEST = property(_get_request) raw_post_data = property(_get_raw_post_data) -class WSGIHandler(base.BaseHandler): +class WSGIHandler(BaseHandler): initLock = Lock() request_class = WSGIRequest diff --git a/django/core/urlresolvers.py b/django/core/urlresolvers.py index c25e99fdd2..ff0bcbcfea 100644 --- a/django/core/urlresolvers.py +++ b/django/core/urlresolvers.py @@ -291,11 +291,10 @@ class RegexURLResolver(object): def resolve(path, urlconf=None): return get_resolver(urlconf).resolve(path) -def reverse(viewname, urlconf=None, args=None, kwargs=None, prefix=u'/'): +def reverse(viewname, urlconf=None, args=None, kwargs=None): args = args or [] kwargs = kwargs or {} - return iri_to_uri(prefix + - get_resolver(urlconf).reverse(viewname, *args, **kwargs)) + return iri_to_uri(u'/' + get_resolver(urlconf).reverse(viewname, *args, **kwargs)) def clear_url_caches(): global _resolver_cache |
