Plain is headed towards 1.0! Subscribe for development updates →

 1from importlib import import_module
 2from importlib.util import find_spec
 3
 4from plain.packages import PackageConfig, packages_registry, register_config
 5
 6
 7@register_config
 8class Config(PackageConfig):
 9    package_label = "plainadmin"
10
11    def ready(self):
12        def _import_if_exists(module_name):
13            if find_spec(module_name):
14                import_module(module_name)
15
16        # Trigger register calls to fire by importing the modules
17        for package_config in packages_registry.get_package_configs():
18            _import_if_exists(f"{package_config.name}.admin")
19
20        # Also trigger for the root app/admin.py module
21        _import_if_exists("app.admin")