0

我在 c:\users\devtool.virtualenv\devenv 中做了一个 virtualenv 在我运行 activate.bat 之后。

最后我写了一个简单的py文件来测试环境:

 import os,sys
 for x in sys.path:
     print x

 print os.executable

结果很奇怪

C:\Users\devtool\.virtualenv\devenv\Scripts
C:\Python27\lib\site-packages\setuptools-0.6c11-py2.7.egg
C:\Python27\lib\site-packages\virtualenv-1.8.4-py2.7.egg
C:\Python27\lib\site-packages\pip-1.2.1-py2.7.egg
C:\Users\developer\.virtualenv\devenv\Lib\site-packages\django
C:\Windows\system32\python27.zip
C:\Python27\DLLs
C:\Python27\lib
C:\Python27\lib\plat-win
C:\Python27\lib\lib-tk
C:\Python27
C:\Python27\lib\site-packages

['C:\\Users\\developer\\.virtualenv\\devenv\\Lib\\site-packages\\django']

C:\Python27\python.exe

实际上它只是使用基本的python安装。使用 virtualenv 有什么意义?我收到安装在 virtualenv 中的 django 错误。

我可以解决它,只需要重写 django-admin.py 以追加到我的 virtualenv 文件夹的搜索路径,但在这种情况下仍然需要 virtualenv。

另一件事我无法理解。在python搜索路径中,有一行

C:\Users\devtools\.virtualenv\devenv\Lib\site-packages\django

当我使用 django-admin.py 我得到

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

但 django 文件夹在路径中

4

2 回答 2

0

几天前我也遇到了同样的问题。从基本文件夹中,您必须执行以下命令。

C:\Users\devtools\.virtualenv\devenv> python Scripts\django-admin.py startproject myproj
于 2013-02-19T13:17:40.407 回答
0

virtualenv 扩展/覆盖您的系统 python 环境,其路径附加到系统 python 安装的路径。你看,你的 .virtualenv 站点包列在系统站点包之前,这就是它的工作原理。

您必须记住的是activate修补您当前的命令行环境,因此您必须activate在运行 python 代码之前运行,具体取决于您的 virtualenv。

于 2013-02-19T13:16:24.933 回答