2011-04-06 95 views
4

我有一個virtualenv所有設置與--no-site-packages標誌。virtualenv使用錯誤的django

當我做了pip install django==1.3一切似乎安裝得很好。

當我運行python manage.py sycndb時出現錯誤。

ImportError django.contrib.staticfiles: No module named staticfiles

我知道這是一個1.3的特性,應該工作。當我去到蟒蛇外殼並鍵入

>>> import django 
>>> django.VERSION 
(1, 2, 1, 'alpha', 0) 

任何想法,爲什麼我回來1.2我對vitrualenv,知道我在呢,因爲我可以導入我已經安裝了其他的事情。除django以外的所有東西似乎都可以工作。看來我在我的機器上安裝了幽靈版本或其他版本,但不應該發生這種情況,因爲--no-site-packages,對吧?

+0

剛做了一個空的品牌''virtualenv --no-site-packages venv'進入了'source bin/active',然後是python。仍然回來django.VERSION 1.2。 – Raisins 2011-04-06 16:40:38

+1

不知道你在使用什麼系統,但可能你的路徑混淆了一些錯誤的python解釋器。嘗試在你的virtualenv中顯式運行'bin/python'! – 2011-04-06 16:48:22

回答

5

您可以執行下列檢查:

  1. 是否使用Python從你的virtualenv?

    which python

    /home/raisins/.virtualenvs/yourenv/bin/python

  2. 打開一個python殼和檢查您的Django是來自:

    python

    >>> import django

    >>> django.__path__

    >>> ['/home/raisins/.virtualenvs/yourenv/lib/python2.6/site-packages/django']

  3. 當您運行pip install命令,你激活你的虛擬環境?

+3

解決了它。這似乎是前一陣子。我硬編碼django路徑在我的'.bash_profile',這似乎是重寫我的Django調用。 – Raisins 2011-04-06 17:00:04

+0

@Raisins這正是我遇到的問題,我無法弄清楚爲什麼!感謝您指出了這一點。 – edu222 2013-04-09 03:27:48