尝试运行runserver
或shell
使用时manage.py
出现ImportError
异常。我正在使用 Django 1.9。
ImportError: No module named 'django.utils.importlib'
尝试运行runserver
或shell
使用时manage.py
出现ImportError
异常。我正在使用 Django 1.9。
ImportError: No module named 'django.utils.importlib'
django.utils.importlib
是仍然支持 Python 2.6 时的兼容性库。自 Django 1.7 以来,它已经过时了,它放弃了对 Python 2.6 的支持,并在 1.9 中按弃用周期删除。
改用 Python 的import_module
函数:
from importlib import import_module
您可以从中导入它的原因django.utils.module_loading
是importlib.import_module
在该模块中导入,而不是因为module_loading
以任何方式定义了实际功能。
由于django.utils.module_loading.import_module
它不是公共 API 的一部分,因此如果不再使用它,可以随时将其删除 - 即使是在次要版本升级中也是如此。
我用以下方法解决了这个问题:
try:
# Django versions >= 1.9
from django.utils.module_loading import import_module
except ImportError:
# Django versions < 1.9
from django.utils.importlib import import_module