diff --git a/django_elasticsearch_dsl/apps.py b/django_elasticsearch_dsl/apps.py index 47865210..73e451c3 100644 --- a/django_elasticsearch_dsl/apps.py +++ b/django_elasticsearch_dsl/apps.py @@ -1,10 +1,9 @@ from django.apps import AppConfig from django.conf import settings +from django.utils.module_loading import import_string from elasticsearch_dsl.connections import connections -from .utils import import_class - class DEDConfig(AppConfig): name = 'django_elasticsearch_dsl' @@ -21,7 +20,7 @@ def ready(self): 'ELASTICSEARCH_DSL_SIGNAL_PROCESSOR', 'django_elasticsearch_dsl.signals.RealTimeSignalProcessor' ) - signal_processor_class = import_class(signal_processor_path) + signal_processor_class = import_string(signal_processor_path) self.signal_processor = signal_processor_class(connections) @classmethod diff --git a/django_elasticsearch_dsl/utils.py b/django_elasticsearch_dsl/utils.py deleted file mode 100644 index a102a01e..00000000 --- a/django_elasticsearch_dsl/utils.py +++ /dev/null @@ -1,16 +0,0 @@ -import importlib - - -def import_class(path): - """Import class by path given.""" - path_bits = path.split('.') - # Cut off the class name at the end. - class_name = path_bits.pop() - module_path = '.'.join(path_bits) - module_itself = importlib.import_module(module_path) - - if not hasattr(module_itself, class_name): - raise ImportError("The Python module '%s' has no '%s' class." - "" % (module_path, class_name)) - - return getattr(module_itself, class_name)