django没有安装在virtualenv中, - no-site-packages标志没有纠正问题

时间:2013-03-06 22:48:01

标签: django virtualenv

我遇到的问题类似于pip / virtualenv / django installation issue,但在该答案中发布的解决方案对我不起作用。

我使用以下方法创建了一个带有--no-site-packages的虚拟环境:

virtualenv venv --distribute --no-site-packages

但是当我激活环境并尝试安装django(sudo pip install django)时,我收到消息:

teddy@coolermaster:~/heroku/battle/hellodjango$ source venv/bin/activate
(venv)teddy@coolermaster:~/heroku/battle/hellodjango$ sudo pip install Django  
Requirement already satisfied (use --upgrade to upgrade): Django in   /usr/local/lib/python2.7/dist-packages 
Cleaning up...

请注意,在上面的消息中,pip已经在我的本地“dist-packages”文件夹中找到了django安装,而不是我的“site-packages”

如果我尝试在python解释器中导入django,我会收到错误:“没有名为django的模块。”

我应该使用命令“pip install django”而不是“sudo pip install django”吗?当我尝试运行“pip install django”时,我受到了“OSError:[Errno 13]权限被拒绝:'/ home / teddy / heroku / battle / hellodjango / venv / build'”

问题是否与权限相关(因为我使用的是sudo)?如果是这样,为什么它不允许我没有sudo pip安装?或者问题可能是我的virtualenv忽略了网站包但仍在我的dist-packages中使用了源代码?

1 个答案:

答案 0 :(得分:1)

使用sudo后清理:

sudo rm -rf /home/teddy/heroku/battle/hellodjango/venv/build

不要再使用sudo了。