Python+;Django+;Virtualenv导入django.core失败

Python+;Django+;Virtualenv导入django.core失败,python,django,path,virtualenv,Python,Django,Path,Virtualenv,我正在Windows7上使用Python 2.7.3。 我已经将路径设置为C:\python27,这是一个原始的python二进制路径 首先,我制作了一个名为“django”的新Virtualenv,没有任何选择 virtualenv django 第二,激活了Virtualenv c:\workspace\py-envs\django\Scripts\activate 第三,使用pip安装Django pip install django 第四,刚刚执行了django-admin.py

我正在Windows7上使用Python 2.7.3。 我已经将路径设置为
C:\python27
,这是一个原始的python二进制路径

首先,我制作了一个名为“django”的新Virtualenv,没有任何选择

virtualenv django
第二,激活了Virtualenv

c:\workspace\py-envs\django\Scripts\activate
第三,使用pip安装Django

pip install django
第四,刚刚执行了django-admin.py startproject的一些名称,如下所示

然后,我在导入
django.core
包时遇到了一个问题

失败

(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 admin.py
    存在于
    c:\py envs\django\Scripts\
  • virtualenv在路径中添加了
    C:\py envs\django\Scripts\
    行(使用echo%PATH%进行检查)
  • pip freeze
    结果仅显示Django==1.5
我想使用第一个命令启动一个项目:

python django-admin.py startproject a

我还能做什么?

之所以会发生这种情况,是因为windows python解释器始终使用全局解释器,而不是当前的python virtualenv解释器

示例:
C:\python27\python.exe#windows始终使用它

而不是这个

C:\envs\my\u env\Scripts\python.exe

在官方文件中,我发现:
使用-m模块名调用时,给定模块位于Python模块路径上,并作为脚本执行

如果您在控制台中键入,echo%PATH%将首先看到virtualenv路径。所以

(django) c:\workspace\python>python -m django-admin startproject my_new_project  

应该在虚拟环境下工作(virtualenv),调用
django admin
的唯一默认方法是通过
django admin.py
调用它

以下工作:

  • django-admin.py startproject项目名称
以下内容不适用:

  • django admin startproject项目名称
  • python django管理启动项目名称
  • python django-admin.py startproject\u NAME

可能与@LieRyan重复很遗憾,我没有在正常环境中安装Django。我只在虚拟环境上安装了。我还检查了normalenv在\Scripts文件夹中没有django-admin.py文件,virtualenv显示了正确的版本号。
(django) c:\workspace\python>python -m django-admin startproject my_new_project