Added an additional check for the availability of the STATIC_* settings to make sure upgrading a pre-1.3 project doesn't raise a misleading error. Thanks for the report, Florian Apolloner.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@14767 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Jannis Leidel 2010-12-02 00:43:36 +00:00
parent a172ed00af
commit 3d5bb27945
1 changed files with 5 additions and 4 deletions

View File

@ -2,6 +2,7 @@ import urllib
from urlparse import urlparse from urlparse import urlparse
from django.conf import settings from django.conf import settings
from django.core.exceptions import ImproperlyConfigured
from django.core.handlers.wsgi import WSGIHandler from django.core.handlers.wsgi import WSGIHandler
from django.contrib.staticfiles import utils from django.contrib.staticfiles import utils
@ -25,6 +26,10 @@ class StaticFilesHandler(WSGIHandler):
return settings.STATIC_ROOT return settings.STATIC_ROOT
def get_base_url(self): def get_base_url(self):
if not settings.STATIC_URL:
raise ImproperlyConfigured("You're using the staticfiles app "
"without having set the STATIC_URL setting. Set it to "
"URL that handles the files served from STATIC_ROOT.")
if settings.DEBUG: if settings.DEBUG:
utils.check_settings() utils.check_settings()
return settings.STATIC_URL return settings.STATIC_URL
@ -42,10 +47,6 @@ class StaticFilesHandler(WSGIHandler):
def file_path(self, url): def file_path(self, url):
""" """
Returns the relative path to the media file on disk for the given URL. Returns the relative path to the media file on disk for the given URL.
The passed URL is assumed to begin with ``base_url``. If the
resultant file path is outside the media directory, then a ValueError
is raised.
""" """
relative_url = url[len(self.base_url[2]):] relative_url = url[len(self.base_url[2]):]
return urllib.url2pathname(relative_url) return urllib.url2pathname(relative_url)