docker setup
This commit is contained in:
		| @ -0,0 +1,9 @@ | ||||
| from django.urls import include | ||||
| from django.views import defaults | ||||
|  | ||||
| __all__ = ["handler400", "handler403", "handler404", "handler500", "include"] | ||||
|  | ||||
| handler400 = defaults.bad_request | ||||
| handler403 = defaults.permission_denied | ||||
| handler404 = defaults.page_not_found | ||||
| handler500 = defaults.server_error | ||||
| @ -0,0 +1,39 @@ | ||||
| import functools | ||||
|  | ||||
| from django.conf import settings | ||||
| from django.urls import LocalePrefixPattern, URLResolver, get_resolver, path | ||||
| from django.views.i18n import set_language | ||||
|  | ||||
|  | ||||
| def i18n_patterns(*urls, prefix_default_language=True): | ||||
|     """ | ||||
|     Add the language code prefix to every URL pattern within this function. | ||||
|     This may only be used in the root URLconf, not in an included URLconf. | ||||
|     """ | ||||
|     if not settings.USE_I18N: | ||||
|         return list(urls) | ||||
|     return [ | ||||
|         URLResolver( | ||||
|             LocalePrefixPattern(prefix_default_language=prefix_default_language), | ||||
|             list(urls), | ||||
|         ) | ||||
|     ] | ||||
|  | ||||
|  | ||||
| @functools.lru_cache(maxsize=None) | ||||
| def is_language_prefix_patterns_used(urlconf): | ||||
|     """ | ||||
|     Return a tuple of two booleans: ( | ||||
|         `True` if i18n_patterns() (LocalePrefixPattern) is used in the URLconf, | ||||
|         `True` if the default language should be prefixed | ||||
|     ) | ||||
|     """ | ||||
|     for url_pattern in get_resolver(urlconf).url_patterns: | ||||
|         if isinstance(url_pattern.pattern, LocalePrefixPattern): | ||||
|             return True, url_pattern.pattern.prefix_default_language | ||||
|     return False, False | ||||
|  | ||||
|  | ||||
| urlpatterns = [ | ||||
|     path("setlang/", set_language, name="set_language"), | ||||
| ] | ||||
| @ -0,0 +1,30 @@ | ||||
| import re | ||||
| from urllib.parse import urlsplit | ||||
|  | ||||
| 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 urlsplit(prefix).netloc: | ||||
|         # 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 | ||||
|         ), | ||||
|     ] | ||||
		Reference in New Issue
	
	Block a user