【问题标题】:django gives an error in virtualenvdjango 在 vi​​rtualenv 中给出错误
【发布时间】:2012-06-29 12:57:10
【问题描述】:

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

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

    • cd c:\Users\developer\
    • mkdir .virtualenv
    • cd .virtualenv
    • virtualenv --distribute --no-site-packages djangos
    • cd djangos
    • cd 脚本
    • activate.bat
    • pip install django

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

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

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

cd c:\项目

django-admin.py startproject 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

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

>>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 中输入完整路径?

【问题讨论】:

  • activete.bat ?不应该是activate.bat

标签: python django


【解决方案1】:

而不是

django-admin.py startproject helloworld

试试

python django-admin.py startproject helloworld

它对我有用。

【讨论】:

    【解决方案2】:

    问题在于 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 的工作方式。

    【讨论】:

      【解决方案3】:

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

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

      【讨论】:

        猜你喜欢
        • 2012-10-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多