【问题标题】:python manage.py startapp pollspython manage.py startapp 民意调查
【发布时间】:2012-07-30 17:08:00
【问题描述】:

我正在关注 djangoproject.com 教程。我使用 pyCharm 设置了一个虚拟项目。 在我的终端命令行上,我 cd 进入包含 manage.py 的文件夹,然后运行该行。 python manage.py startapp 投票

我收到此错误:

Traceback (most recent call last):
  File "manage.py", line 8, in <module>
    from django.core.management import execute_from_command_line
ImportError: No module named django.core.management

这是什么?为什么我不能创建另一个名为 polls 的应用程序?

【问题讨论】:

  • 确保您的系统上确实安装了 Django,并且可以在命令行中使用。
  • Django 已安装。在命令行中可用是什么意思?
  • 不确定 pyCharm 是如何工作的,但如果 Django 安装在系统范围内,您应该不会看到该错误消息。从你的命令行测试这个:python -c "import django"
  • Traceback(最近一次调用最后一次):文件“”,第 1 行,在 ImportError: No module named django
  • 是的,似乎 Django 没有正确安装,无法在整个系统中使用。如果您知道 Django 的安装路径,则可以将其作为一种解决方法:`PYTHONPATH="/path/to/django/" python manage.py ',但正确的解决方案是全局安装 Django 或如果您不想全局安装,请使用 virtualenv

标签: python django pycharm


【解决方案1】:

在我的例子中,我已经安装了 Django,但是我从 virtualenv 输入“runserver”命令,它显示了与 Chapsterj

相同的错误

我解决了输入这个问题:

(venv)$ pip install Django 

之前,要进入 virtualenv,请输入:

$ virtualenv venv --distribute
$ source venv/bin/activate
(venv)$

【讨论】:

    【解决方案2】:

    我从未听说过 PyCharm,但正如 cmets 所暗示的,这意味着 python 解释器找不到 django。

    要尝试的一件事 - 打开终端(任何地方)并输入:

    python
    

    然后运行

    import django
    

    如果您安装了 django,这应该可以工作;否则不会。

    在我的情况下,我通过 virtualenv 运行我所有的 django 安装(基本上,python 包索引的本地化版本,因此不同的项目可以安装不同版本的包)所以从任何旧终端执行此操作对我来说都行不通.

    就我而言,我需要对PYTHONPATH 环境变量进行调整。好吧,实际上,我有点撒谎,virtualenv 比这要复杂一些,但这是使它工作的另一种方法。

    所以,我建议:

    • 确保在 python 站点包目录(大多数第三方包所在的目录)中安装了 django。通常,yum install python-djangopip install Django 之类的东西会为您执行此操作。
    • 如果这不是您安装 Django 的位置,请先在 shell 会话中编辑您的 PYTHONPATH(以便于测试和正确),然后在您的 IDE 中编辑,以便 python 可以找到它。
    • 如果 IDE 没有为您提供编辑 pythonpath 变量的方法,您应该可以通过编辑 manage.py 来管理它,如下所示:

      import sys
      sys.path.append('/opt/Django')
      
      # the rest of manage.py ...
      import django
      

    【讨论】:

      【解决方案3】:

      要正确安装 django,您必须使用“超级用户”,尝试

      sudo pip install django
      

      希望对你有帮助

      【讨论】:

        【解决方案4】:

        在 Rhel6 上,umask 阻止了 django 目录被访问,所以我不得不运行:

        cd /usr/lib/python2.6/site-packages/django/
        find django -type d | xargs chmod 775
        find django -type f | xargs chmod 664
        

        并将 /usr/lib/python2.6/site-packages/django/ 添加到我在 .bash_profile 中的路径。

        【讨论】:

          【解决方案5】:

          我没有看到对此的接受回应,因为它不是一个 Django 问题,而是一个 PyCharm 问题,我将添加我的 2c,以防其他人开始遇到同样的问题。

          我还在使用 PyCharm 完成“编写你的第一个 Django”教程,但我没有遇到这些问题。我遇到了各种各样的问题,直到我意识到你让 PyC​​harm 创造了一切,问题就消失了 ;-)

          到目前为止,我正在同时阅读 PyCharm 和 Django tuts。 PyCharm 啧啧在这里:https://www.jetbrains.com/pycharm/help/creating-django-application-in-a-project.html

          您的问题可以这样回答:

          To add a new django application to an existing project
          
          On the main menu, choose Tools | Run manage.py task
          In the Enter manage.py task name dialog box, type startapp. Note suggestion list that appears under the dialog box after entering the first letter, and shrinks as you type to show the exact match only.
          In the dialog box that opens, type the name of the new Django application.
          

          【讨论】:

            【解决方案6】:

            我在使用 PyCharm 时遇到了同样的问题,我所做的是: 转到文件-> 默认设置-> Project Interpreter (Pick python 3...) 如果这就是你想要使用的 它将显示所有可用的包 双击 Django 安装包。

            然后在终端而不是 python manage.py 迁移 磁带 python3 manage.py 迁移

            【讨论】:

              猜你喜欢
              • 2020-02-29
              • 2018-04-22
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2019-09-10
              • 2021-11-15
              相关资源
              最近更新 更多