import re import debug_toolbar from django.conf import settings from django.contrib import admin from django.conf.urls.i18n import i18n_patterns from django.urls import include, path, re_path from django.utils.text import gettext_lazy as _ from django.views.static import serve i18n_resolvers = i18n_patterns(path(_('users/'), include('users.urls', namespace='users'))) urlpatterns = [ path('', include('web.urls', namespace='web')), path('admin/', admin.site.urls), path('watchman/', include('watchman.urls')), path('tpv/', include('shop.urls', namespace='shop')), path('backoffice/', include('backoffice.urls', namespace='backoffice')), ] for resolver in i18n_resolvers: urlpatterns += resolver.url_patterns # Sin S3 activado no hay nginx ni otro servidor delante de uvicorn que sirva # MEDIA_ROOT, así que Django tiene que servirlo también fuera de DEBUG. No se # usa el helper static() porque este es un no-op fuera de DEBUG por diseño. urlpatterns += [ re_path( r'^%s(?P.*)$' % re.escape(settings.MEDIA_URL.lstrip('/')), serve, {'document_root': settings.MEDIA_ROOT} ) ] if settings.DEBUG: urlpatterns.append(path('__debug__/', include(debug_toolbar.urls))) urlpatterns += [path('silk/', include('silk.urls')), path('__reload__/', include('django_browser_reload.urls'))]