diff --git a/aleksis/core/util/core_helpers.py b/aleksis/core/util/core_helpers.py index e1a608fe1054bf514ee9ffb55e7924f2b2e5a158..45a2253613b74d97a59c7b7711ae8c5ab31af444 100644 --- a/aleksis/core/util/core_helpers.py +++ b/aleksis/core/util/core_helpers.py @@ -73,17 +73,17 @@ def get_app_packages(only_official: bool = False) -> Sequence[str]: def get_app_module(app: str, name: str) -> Optional[ModuleType]: - """Get the settings module of an app.""" + """Get a named module of an app.""" pkg = ".".join(app.split(".")[:-2]) - mod_settings = None + while "." in pkg: try: - return import_module(f"{app}.{name}") + return import_module(f"{pkg}.{name}") except ImportError: # Import errors are non-fatal. pkg = ".".join(pkg.split(".")[:-1]) - # The app does not have settings + # The app does not have this module return None