diff --git a/apps/app_registry/__init__.py b/apps/app_registry/__init__.py index 7a23d41714..f167c96d04 100644 --- a/apps/app_registry/__init__.py +++ b/apps/app_registry/__init__.py @@ -8,16 +8,19 @@ from django.utils.importlib import import_module from .models import App -###app.set_backup([ModelBackup()]) -for app_name in settings.INSTALLED_APPS: - App.register(app_name) - try: - post_init = import_module('%s.post_init' % app_name) - except ImportError: - pass - else: - if post_init: - for name, value in inspect.getmembers(post_init): - if hasattr(value, '__call__') and name.startswith('init'): - value() +def register_apps(): + for app_name in settings.INSTALLED_APPS: + App.register(app_name) + try: + post_init = import_module('%s.post_init' % app_name) + except ImportError: + pass + else: + if post_init: + for name, value in inspect.getmembers(post_init): + if hasattr(value, '__call__') and name.startswith('init'): + value() + + +register_apps() diff --git a/apps/app_registry/models.py b/apps/app_registry/models.py index de1637fd3a..33ede63663 100644 --- a/apps/app_registry/models.py +++ b/apps/app_registry/models.py @@ -19,7 +19,7 @@ from project_setup.api import register_setup from project_tools.api import register_tool from statistics.api import register_statistics from navigation.api import register_top_menu -from bootstrap.classes import Cleanup +from bootstrap.classes import Cleanup, BootstrapModel #from .classes import AppBackup, StorageModuleBase, Setting @@ -103,7 +103,11 @@ class App(TranslatableLabelMixin, LiveObjectMixin, models.Model): logger.debug('cleanup_function: %s' % cleanup_function) Cleanup(cleanup_function) - + for bootstrap_model in getattr(registration, 'bootstrap_models', []): + logger.debug('bootstrap_model: %s' % bootstrap_model) + BootstrapModel(model_name=bootstrap_model, app_name=app_name) + + #def set_backup(self, *args, **kwargs): # return AppBackup(self, *args, **kwargs)