diff --git a/hshassets/management/commands/buildassets.py b/hshassets/management/commands/buildassets.py index 7dd59b34279dc44de7b41218f2f99a013cde7c38..7ae273cfb905dbeda6935e06d4a2edabe298ef49 100644 --- a/hshassets/management/commands/buildassets.py +++ b/hshassets/management/commands/buildassets.py @@ -1,5 +1,4 @@ from django.core.management.base import BaseCommand -from django.conf import settings from hshassets import utils from hshassets import logger @@ -14,7 +13,7 @@ class Command(BaseCommand): app_name = options.get('app_name') - if app_name is None or app_name in settings.INSTALLED_APPS: + if app_name is None or app_name in utils.get_installed_app_name_list(): logger.debug('\nStart build assets.\n') utils.build_assets(app_name) logger.debug('Build assets finished!\n') diff --git a/hshassets/management/commands/initassets.py b/hshassets/management/commands/initassets.py index 089e92ea7a0d0ffef41f1c6948aa41936de30fc5..2e334bf2bafec0b1ece3ef73cb3ddef5e314274e 100644 --- a/hshassets/management/commands/initassets.py +++ b/hshassets/management/commands/initassets.py @@ -1,5 +1,4 @@ from django.core.management.base import BaseCommand -from django.conf import settings from hshassets import utils from hshassets import logger @@ -28,7 +27,7 @@ class Command(BaseCommand): else: empty = False - if app_name is None or app_name in settings.INSTALLED_APPS: + if app_name is None or app_name in utils.get_installed_app_name_list(): logger.debug('\nStart initialize assets.\n') utils.init_assets(app_name, empty) logger.debug('Initialisation finished!\n') diff --git a/hshassets/utils.py b/hshassets/utils.py index 3fb357bb31f3d6209da8ac8a880f2800a696de39..fcfc0b9a97d07e28242879da0857ef83bca580ec 100644 --- a/hshassets/utils.py +++ b/hshassets/utils.py @@ -1,6 +1,3 @@ -from django.conf import settings - - from . import logger from importlib import import_module @@ -11,6 +8,13 @@ import jsmin import shutil import re +from django.apps import apps as django_apps +from django.conf import settings + + +def get_installed_app_name_list(): + return [app.name for app in django_apps.get_app_configs()] + def get_installed_apps_with_asset_directory(include_project=False): """ @@ -19,9 +23,10 @@ def get_installed_apps_with_asset_directory(include_project=False): :return: list of appnames """ apps = [] - for app_name in settings.INSTALLED_APPS: + + for app_name in get_installed_app_name_list(): if os.path.isdir(get_assets_path(app_name)): - if app_name is not 'hshassets': + if app_name != 'hshassets': apps.append(app_name) if not include_project and get_projectname() in apps: apps.remove(get_projectname()) diff --git a/setup.py b/setup.py index 249ff9f94039bdb9935309685ec07bd28c83b2d0..7c0b34966d494bd171219f290475fe4dc4bb9d2e 100644 --- a/setup.py +++ b/setup.py @@ -7,7 +7,7 @@ os.chdir(os.path.normpath(os.path.join(os.path.abspath(__file__), os.pardir))) setup( name='django-hshassets', - version='2.2.21', + version='2.2.22', packages=find_packages(), include_package_data=True, license='MIT License',