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
This commit is contained in:
parent
5050e30507
commit
ad4118be44
|
@ -15,12 +15,11 @@ def static(prefix, view='django.views.static.serve', **kwargs):
|
||||||
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
|
) + 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 []
|
return []
|
||||||
elif not prefix:
|
elif not prefix:
|
||||||
raise ImproperlyConfigured("Empty static prefix not permitted")
|
raise ImproperlyConfigured("Empty static prefix not permitted")
|
||||||
elif '://' in prefix:
|
|
||||||
raise ImproperlyConfigured("URL '%s' not allowed as static prefix" % prefix)
|
|
||||||
return patterns('',
|
return patterns('',
|
||||||
url(r'^%s(?P<path>.*)$' % re.escape(prefix.lstrip('/')), view, kwargs=kwargs),
|
url(r'^%s(?P<path>.*)$' % re.escape(prefix.lstrip('/')), view, kwargs=kwargs),
|
||||||
)
|
)
|
||||||
|
|
|
@ -297,6 +297,12 @@ development::
|
||||||
# ... the rest of your URLconf goes here ...
|
# ... the rest of your URLconf goes here ...
|
||||||
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
|
) + 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:
|
.. _staticfiles-production:
|
||||||
|
|
||||||
Serving static files in production
|
Serving static files in production
|
||||||
|
|
Loading…
Reference in New Issue