初学Django遇到问题 - ImportError:没有名为management的模块
首先,我已经看过所有我能找到的类似标题的讨论。这可能是个重复的问题,但我找了找还是没找到。
其次,这是我的设置和我所做的事情。我在 Windows 7
上。我正在按照 Heroku
的入门指南进行操作,链接是:https://devcenter.heroku.com/articles/django。我使用了他们提供的指南来安装 Python
、virtualenv
、distribute
和 pip
(http://docs.python-guide.org/en/latest/starting/install/win/)。我安装了 Python 2.7
,没有其他版本,使用的是 Windows 安装程序。然后我完全按照 Heroku
指南中的步骤进行操作。我必须使用安装 psycopg2
的替代方法,但看起来一切正常。
问题出现在我到达应该运行的步骤时:
django-admin.py startproject hellodjango .
当我尝试运行这个命令时,我收到了这个错误:
(venv) C:\Users\myname\projectdir>django-admin.py startproject hellodjango .
Traceback (most recent call last):
File "C:\Users\myname\projectdir\venv\Scripts\django-admin.py", line 2, in <module>
from django.core import management
ImportError: No module named django.core
我尝试在虚拟环境中手动运行 Python,并导入 django、django.core 和错误文本中指定的行,结果都能正常工作:
(venv) C:\Users\myname\projectdir>python
Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)] on win
32
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> from django import core
>>> import django.core
>>> from django.core import management
>>>
我尝试使用 pip 卸载所有东西,删除虚拟环境,删除项目文件夹,然后重新开始。但同样的错误还是出现了。
这可能是个简单的问题,但我就是搞不清楚我缺少了什么。有什么想法吗?
编辑 - 此外,我尝试将命令改为:
django-admin.py startproject projectdir .
但结果还是一样。
然后我尝试:
python C:\Users\myname\projectdir\venv\Lib\site-packages\django\bindjango-admin.py startproject projectdir .
但我得到了:
python: can't open file 'C:\Users\wtodom\hdj\venv\Lib\site-packages\django\bindj
ango-admin.py': [Errno 2] No such file or directory
1 个回答
(在问题编辑和评论中回答。已转换为社区维基答案。请参见 没有答案但问题在评论中解决的提问)
提问者写道:
我把路径输入错了(少了一个
\
),现在可以用了。请问我怎么才能不每次都输入完整的django-admin.py
文件路径呢?
@DanHoerst 写道:
可以看看这个答案,了解如何在Windows上添加内容到
PYTHONPATH
:如何在Windows 7中添加到pythonpath?。因为你能在命令行中import django
,这说明你至少在你的应用文件夹C:\Users\myname\projectdir
中有django,否则会报错。如果你在虚拟环境中的其他文件夹打开命令行,你能导入django吗?
提问者写道:
添加到
PYTHONPATH
看起来可行,但我还没试过。至于导入,我可以从虚拟环境中的其他文件夹导入。(我先从项目根目录试了,然后又从一个不在Django路径下的子文件夹试了。)