28 lines
844 B
Python
28 lines
844 B
Python
|
import re
|
||
|
|
||
|
from django.conf import settings
|
||
|
from django.core.exceptions import ImproperlyConfigured
|
||
|
from django.urls import re_path
|
||
|
from django.views.static import serve
|
||
|
|
||
|
|
||
|
def static(prefix, view=serve, **kwargs):
|
||
|
"""
|
||
|
Return a URL pattern for serving files in debug mode.
|
||
|
|
||
|
from django.conf import settings
|
||
|
from django.conf.urls.static import static
|
||
|
|
||
|
urlpatterns = [
|
||
|
# ... the rest of your URLconf goes here ...
|
||
|
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
|
||
|
"""
|
||
|
if not prefix:
|
||
|
raise ImproperlyConfigured("Empty static prefix not permitted")
|
||
|
elif not settings.DEBUG or '://' in prefix:
|
||
|
# No-op if not in debug mode or a non-local prefix.
|
||
|
return []
|
||
|
return [
|
||
|
re_path(r'^%s(?P<path>.*)$' % re.escape(prefix.lstrip('/')), view, kwargs=kwargs),
|
||
|
]
|