pip/virtualenv/django安装问题

som*_*me1 12 django installation pip virtualenv

我正在使用新的virtualenv,并尝试在其上安装django.

当我输入时,which django-admin.py我回来了/usr/local/bin/django-admin.py,这是不正确的,它应该安装在.virtualenvs文件夹中.

如果我这样做,pip install django我会回来:

Requirement already satisfied (use --upgrade to upgrade): django in /Library/Python/2.6/site-packages
Run Code Online (Sandbox Code Playgroud)

如果我这样做,pip uninstall django我会回来:

Not uninstalling Django at /Library/Python/2.6/site-packages, outside environment /Users/username/.virtualenvs/envname/bin/..
Run Code Online (Sandbox Code Playgroud)

如何在virtualenv中安装和使用django?不知道如何解决这个问题.

Dav*_*ver 12

首先,你应该设置virtualenv --no-site-packages:

virtualenv --no-site-packages …/my-env/
Run Code Online (Sandbox Code Playgroud)

然后你应该确保你已经激活了它:

. …/my-env/bin/activate
Run Code Online (Sandbox Code Playgroud)

或者,使用virtualenv帮助器:

workon my-env
Run Code Online (Sandbox Code Playgroud)

然后安装Django:

pip install django
Run Code Online (Sandbox Code Playgroud)

  • 只是一张纸条.发布这些评论后的某个时间, - no-site-packages成为virtualenv的默认行为.然而,我仍然遇到了一个问题.这可能不言而喻,但我仍然这样说,对于那些和我一样有问题的人:确保你不要把"sudo"放在pip前面.只做"pip install django",没有sudo.感谢大家 (5认同)
  • 这可能会导致问题,因为您将看到全局Django.如果`哪个pip`显示`.../my-env/.../bin/pip`,你可以使用`pip install django`,重新启动你的shell(因为你的shell已经缓存了`django的错误路径-admin.py`),重新激活,你应该好好去. (3认同)