diff --git a/aleksis/core/urls.py b/aleksis/core/urls.py index d2c02ed4a5815bfb113fa0aff19700b153b20eb4..f5e5899063678abc338ac971d1df3f55db3d0430 100644 --- a/aleksis/core/urls.py +++ b/aleksis/core/urls.py @@ -1,3 +1,5 @@ +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(