Skip to content
Snippets Groups Projects

Resolve "Apps should be able to register URLs for API stuff which are not mounted under /django/"

+ 12
4
from importlib import import_module
from django.apps import apps
from django.conf import settings
from django.contrib import admin
@@ -410,12 +412,18 @@ for app_config in apps.app_configs.values():
continue
try:
urlpatterns.append(
path(f"django/app/{app_config.label}/", include(f"{app_config.name}.urls"))
)
urls_module = import_module(f"{app_config.name}.urls")
except ModuleNotFoundError:
# Ignore exception as app just has no URLs
pass # noqa
urls_module = None
if hasattr(urls_module, "urlpatterns"):
urlpatterns.append(
path(f"django/app/{app_config.label}/", include(urls_module.urlpatterns))
)
if hasattr(urls_module, "api_urlpatterns"):
urlpatterns.append(path(f"app/{app_config.label}/", include(urls_module.api_urlpatterns)))
urlpatterns.append(
re_path(
Loading