def _get_default_url_home()

in airavata_django_portal_commons/dynamic_apps/context_processors.py [0:0]


def _get_default_url_home(app_config):
    """Return first url pattern as a default."""
    urls = _get_app_urls(app_config)
    app_name = _get_url_app_name(app_config)
    logger.warning(
        "Custom Django app {} has no URL namespace " "defined".format(app_config.label)
    )
    first_named_url = None
    for urlpattern in urls.urlpatterns:
        if hasattr(urlpattern, "name"):
            first_named_url = urlpattern.name
            break
    if not first_named_url:
        raise Exception(f"{urls} has no named urls, can't figure out default home URL")
    if app_name:
        return app_name + ":" + first_named_url
    else:
        return first_named_url