【问题标题】:Django manage.py can't find an INSTALLED_APP even though the module is in the path即使模块在路径中,Django manage.py 也找不到 INSTALLED_APP
【发布时间】:2010-04-04 13:04:31
【问题描述】:

当我运行 python manage.py shell 时,我收到一个关于我添加到 INSTALLED_APPS 的最后一个应用程序的错误,即 django-evolution,说它是一个未定义的模块。尽管我已经将 django-evolution 的路径添加到了系统路径中。事实上,在这个错误之后,我可以运行 python 并在 django_evolution 上进行导入,一切都很好。为什么 django 或 python 在明确设置甚至添加到路径时看不到这个模块?

编辑:

这只发生在从 iPython 运行时。当我从 cmd 提示符运行时,它工作正常。去图吧。

【问题讨论】:

    标签: python django django-evolution


    【解决方案1】:

    您的django_evolution 中是否有 init.py 文件?任何包含django_evolution 的文件夹也需要一个。

    【讨论】:

      【解决方案2】:

      您需要将其添加到 settings.py 的 INSTALLED_APPS 部分。

      【讨论】:

      • 我做到了。正是 settings.py 中的那一行失败了。抱歉,我误会了。
      【解决方案3】:

      如果您使用 virtualenv 并且 ipython 安装在系统级别,但您的应用程序安装在 env 级别,则会导致这种情况。解决方法是从系统中删除 ipython 并将其安装到您的环境中。

      【讨论】:

        【解决方案4】:

        我知道这是超级旧的,但如果有人遇到这个问题,我的问题是因为我在我的 venv 中提升为 root。我已经初始化了我的虚拟环境,然后将我的权限升级为 root。如果deactivate 不起作用并且你是root,那么你应该exit 然后deactivate,然后你可以做sudo su 然后source myenv/bin/activate。希望这会有所帮助!

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2019-04-17
          • 2015-06-13
          • 2016-08-10
          • 2018-07-15
          • 2019-12-17
          • 2021-08-24
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多