我在Windows 7上使用Python 2.7.3。
我将PATH设置为C:\python27
,这是一个原始的python二进制路径。
首先,我制作了一个名为“django”的新Virtualenv,没有任何选项,
virtualenv django
其次,激活了Virtualenv,
c:\workspace\py-envs\django\Scripts\activate
第三,使用pip安装Django,
pip install django
第四,刚刚执行了django-admin.py startproject SOME_NAME
,如下所示。
然后,我在导入django.core
包时遇到了问题。
FAILED
(django) c:\workspace\python>django-admin.py startproject a
(django) c:\workspace\python>python django-admin.py startproject a
(django) c:\workspace\python>c:\py-envs\django\Scripts\python django-admin.py startproject a
错误消息
Traceback (most recent call last):
File "C:\workspace\py-envs\django\Scripts\django-admin.py", line 2, in <module>
from django.core import management
ImportError: No module named django.core
保护正常工作
(django) c:\workspace\python>python c:\py-envs\django\Scripts\django-admin.py startproject a
选中
django-admin.py
存在于c:\py-envs\django\Scripts\
C:\py-envs\django\Scripts\
行(使用echo%PATH%检查)pip freeze
结果只显示Django == 1.5 我想使用第一个命令启动一个项目:
python django-admin.py startproject a
我还能做些什么?
答案 0 :(得分:2)
在虚拟环境(virtualenv)下,调用django-admin
的唯一默认方式是django-admin.py
调用它。
以下作品:
django-admin.py startproject PROJECT_NAME
,以下内容不是:
django-admin startproject PROJECT_NAME
,python django-admin startproject PROJECT_NAME
,python django-admin.py startproject PROJECT_NAME
。答案 1 :(得分:1)
这是因为windows python解释器总是使用全局解释器而不是当前的python virtualenv解释器。
例:
C:\ python27 \ python.exe #windows总是使用它
而不是这个
C:\ ENVS \ my_env \脚本\ python.exe
在官方文档中,我发现了这个:
http://docs.python.org/2/using/cmdline.html?highlight=#-m
“当使用-m module-name调用时,给定模块位于Python模块路径上并作为脚本执行。”
如果您输入控制台,回显%PATH%,将首先看到virtualenv路径。因此
(django) c:\workspace\python>python -m django-admin startproject my_new_project
应该有效