summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJannis Leidel <jannis@leidel.info>2011-03-15 20:13:21 +0000
committerJannis Leidel <jannis@leidel.info>2011-03-15 20:13:21 +0000
commitad4118be443266685cfc7ab2d59794e0692bc944 (patch)
tree40b33c8d393347456fd8f857f330cacb1a9e124b
parent5050e3050723573621d38d334527794e3cd3d2b2 (diff)
Fixed #15598 -- Updated static URL helper to be no-op on non-local prefixes. Thanks, traff.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@15839 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--django/conf/urls/static.py5
-rw-r--r--docs/howto/static-files.txt6
2 files changed, 8 insertions, 3 deletions
diff --git a/django/conf/urls/static.py b/django/conf/urls/static.py
index ff1942f990..8be564ec7a 100644
--- a/django/conf/urls/static.py
+++ b/django/conf/urls/static.py
@@ -15,12 +15,11 @@ def static(prefix, view='django.views.static.serve', **kwargs):
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
"""
- if not settings.DEBUG:
+ # No-op if not in debug mode or an non-local prefix
+ if not settings.DEBUG or (prefix and '://' in prefix):
return []
elif not prefix:
raise ImproperlyConfigured("Empty static prefix not permitted")
- elif '://' in prefix:
- raise ImproperlyConfigured("URL '%s' not allowed as static prefix" % prefix)
return patterns('',
url(r'^%s(?P<path>.*)$' % re.escape(prefix.lstrip('/')), view, kwargs=kwargs),
)
diff --git a/docs/howto/static-files.txt b/docs/howto/static-files.txt
index 2787c1cac8..77e07141e3 100644
--- a/docs/howto/static-files.txt
+++ b/docs/howto/static-files.txt
@@ -297,6 +297,12 @@ development::
# ... the rest of your URLconf goes here ...
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
+.. note::
+
+ The helper function will only be operational in debug mode and if
+ the given prefix is local (e.g. ``/static/``) and not a URL (e.g.
+ ``http://static.example.com/``).
+
.. _staticfiles-production:
Serving static files in production