2

我有Win7 64位。我的动作顺序如下

  1. 我已经安装了 python 2.7.3。系统路径清晰。
  2. 然后我确实安装了 virtualenv 和 pip
  3. 接下来是我的命令序列

    • cd c:\用户\开发者\
    • mkdir .virtualenv
    • cd .virtualenv
    • virtualenv --distribute --no-site-packages djangos
    • cd djangos
    • 光盘脚本
    • 激活.bat
    • 点安装django

现在我在系统路径环境中包含一个目录

c:\Users\developer\.virtualenv\django\scripts

这就是问题所在。如果输入控制台

cd c:\项目

django-admin.py 启动项目 helloworld

然后我得到

Traceback (most recent call last):
  File "C:\Users\developer\.virtualenv\djangos\Scripts\django-admin.py", line 2, in     <module>
    from django.core import management
ImportError: No module named django.core

但如果我确实运行
python
和内部解释器

>>import django
>>django.VERSION
>>(1, 4, 0, 'final', 0)
>>from django import core
>>from django.core import managment

我没有收到任何错误

创建项目的唯一方法是运行
(djangos) c:\Projects>python c:\Users\developer.virtualenv\djangos\Scripts\django-admin.py startproject hello

如果有办法避免每次在cli中输入完整路径?

4

3 回答 3

1

代替

django-admin.py startproject helloworld

尝试

python django-admin.py startproject helloworld

它对我有用。

于 2013-01-29T12:32:28.250 回答
1

问题是 Windows 会自动将.py文件关联到特定的python.exe可执行文件。即使您激活了virtualenv,尝试执行命令时也会引发错误:

django-admin.py

原因是用于执行脚本的python.exe仍然是Windows与.py文件关联的那个。就我而言,默认的 Windows 关联是C:\Python27\python.exe。尽管已经配置并激活了 virtualenv 以指向C:\Users\developer.virtenv\django\scripts\python.exe

要正确执行djano-admin.py,请使用完整路径,例如:

C:\users\developer\.virtenv\django\scripts\python.exe django-admin.py

或者,删除与.py文件的默认 Windows 关联。这样,当virtualenv被激活时,它会修改%PATH%变量以指向虚拟环境中的python.exe

~~~

注意:这个问题一般不会出现在 Linux 机器上。它是特定于 Windows 工作方式的。

于 2013-12-30T06:50:39.487 回答
0

在我看来,您对 virtualenv 的激活失败了。因此 Django 安装在您特别排除的站点包中。尝试创建一个没有 --no-site-packages 的 virtualenv 来测试是否是这种情况。

您始终可以为快捷命令创建别名或符号链接,请尝试 google

于 2012-06-29T14:46:25.630 回答