importTerror:无法导入名称removedinDjango19警告

2024-04-18 11:15:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Django 1.8.7上,我刚刚安装了Django Allauth,方法是克隆repo并在终端上我的webapp的应用程序目录中运行pip install。现在,当我运行manage.py migrate时,会出现以下错误:

➜src git:(master) ✗ python manage.py migrate
    Traceback (most recent call last):
      File "manage.py", line 8, in <module>
        from django.core.management import execute_from_command_line
      File "/Library/Python/2.7/site-packages/django/core/management/__init__.py", line 10, in <module>
        from django.apps import apps
      File "/Library/Python/2.7/site-packages/django/apps/__init__.py", line 1, in <module>
        from .config import AppConfig
      File "/Library/Python/2.7/site-packages/django/apps/config.py", line 6, in <module>
        from django.utils.module_loading import module_has_submodule
      File "/Library/Python/2.7/site-packages/django/utils/module_loading.py", line 4, in <module>
        from importlib import import_module
      File "/Library/Python/2.7/site-packages/django/utils/importlib.py", line 6, in <module>
        from django.utils.deprecation import RemovedInDjango19Warning
    ImportError: cannot import name RemovedInDjango19Warning
    ➜  src git:(master) ✗ 

enter image description here

我已经检查过了,我还在django 1.8.7上,所以它没有意外升级。


Tags: appsdjangoinfrompyimportmanagepackages
3条回答

@MaxRah这是由Django版本中的冲突引起的。如其他人所述,您必须删除pip uninstall django并重新安装首选版本:pip install django==1.9这应该可以解决问题。

尝试在python上使用cron jobs(使用kronos库)时出现此错误

#getting error while trying to run kronos cron job
python manage.py runtask complain

由于@olivrg解决了这个问题(在我的例子中重新安装django,我使用的是1.8.X版本,所以我升级到1.9X)

sudo pip uninstall django

sudo pip install django==1.9

您的安装已损坏,回溯与版本1.8.7中的代码不匹配(from importlib import import_module位于line 8,而不是第4行)。您需要卸载Django并进行干净的安装。

我强烈建议您使用virtualenv为Django项目设置一个虚拟环境。这是分离系统上不同python环境的事实标准。损坏可能是因为不同的项目试图在系统范围的站点包中安装不同版本的Django。

相关问题 更多 >