Windows上的django-admin.py和virtualenv问题 [英] django-admin.py and virtualenv issue on Windows

查看:144
本文介绍了Windows上的django-admin.py和virtualenv问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的系统中有Django 1.2.3系统安装:

In my system there is Django 1.2.3 installed system wide:

C:\>python -c "import django; print django.get_version()"
1.2.3
C:\>django-admin.py --version
1.2.3

然后,在安装Django 1.2.4的C:\dev中有一个名为 venv 的虚拟环境:

Then there is a virtual environment called venv in C:\dev where I installed Django 1.2.4:

C:\> dev\venv\Scripts\activate.bat
(venv) C:\> python -c "import django; print django.get_version()"
1.2.4
(venv) C:\> django-admin.py --version
1.2.3

我的问题:


  1. 为什么django-admin.py报告版本1.2.3,如果当前的Python(虚拟)环境安装了django 1.2.4?

  2. 活动时,如何自动使用Django的1.2.4 django-admin.py?

  1. Why django-admin.py reports version 1.2.3, if the current Python (virtual) environment has django 1.2.4 installed?
  2. How can I use Django's 1.2.4 django-admin.py automatically when venv is active?

附加信息:


  • virtualenv版本:1.5.1,Python版本2.7

  • 命令用于创建 venv C:\dev\> virtualenv --no-site-packages venv

  • (venv)C:\> echo%PATH%

C:\dev\venv\Scripts; ...其他路径...

中的django-admin.py的shebang: #!C:\dev\Scripts\python.exe

希望你能帮忙,非常感谢。

Hope you can help, many thanks.

推荐答案

这是因为你的窗口有关联的 .py 扩展名全局安装 python.exe 。因此,当您键入 django-admin.py 时,即使您使用的是virtualenv,也会调用全局python,并将其全局django安装在其自身中站点包。尝试 python django-admin.py 以规避关联。

This is because your windows has associated .py extension with the globally installed python.exe. Therefore when you type django-admin.py, even though you're in a virtualenv, the global python is invoked, and it in turn finds your global django installation in its own site-packages. Try python django-admin.py to circumvent the association.

这篇关于Windows上的django-admin.py和virtualenv问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆