django-orchestra-test/orchestra/utils/apps.py
2014-10-07 13:08:59 +00:00

44 lines
1.4 KiB
Python

#from django.utils.importlib import import_module
#from django.utils.module_loading import module_has_submodule
#def autodiscover(module):
# """ Auto-discover INSTALLED_APPS module.py """
# from django.conf import settings
# for app in settings.INSTALLED_APPS:
# mod = import_module(app)
# try:
# import_module('%s.%s' % (app, module))
# except ImportError:
# # Decide whether to bubble up this error. If the app just
# # doesn't have the module, we can ignore the error
# # attempting to import it, otherwise we want it to bubble up.
# if module_has_submodule(mod, module):
# print '%s module caused this error:' % module
# raise
def isinstalled(app):
""" returns True if app is installed """
from django.conf import settings
return app in settings.INSTALLED_APPS
def add_app(INSTALLED_APPS, app, prepend=False, append=True):
""" add app to installed_apps """
if app not in INSTALLED_APPS:
if prepend:
return (app,) + INSTALLED_APPS
else:
return INSTALLED_APPS + (app,)
return INSTALLED_APPS
def remove_app(INSTALLED_APPS, app):
""" remove app from installed_apps """
if app in INSTALLED_APPS:
apps = list(INSTALLED_APPS)
apps.remove(app)
return tuple(apps)
return INSTALLED_APPS