2011-02-11 56 views
1

我已經安裝了virtualenv以及flask,werkzeug,jinja2和SQLAlchemy。我是繼燒瓶網站上提到的教程和執行燒瓶代碼時,我碰到下面的錯誤Virtualenv與flask-werkzeug問題

Traceback (most recent call last): 
    File "hello.py", line 1, in ? 
    from flask import Flask 
    File "/root/myproject/env/lib/python2.4/site-packages/Flask-0.7dev_20110211-py2.4.egg/flask/__init__.py", line 18 
    from .app import Flask, Request, Response 
     ^

什麼,我覺得是virtualenv中包括了Python 2.4和燒瓶的文件中也提到,燒瓶支持Python 2.5。所以也許這可能是問題,也可能是其他問題。請幫我解決這個問題。

其次,我想知道獲取最新的virtualenv的過程,它具有Python 2.7或有關如何將它安裝在virtualenv上的任何提示。

我使用CentOS的

預先感謝您

回答

2

不知道你做了什麼,你的virtualenv是怎麼老..但您可以通過使自己的virtualenv:

% python -c "import urllib, os; os.mkdir('py-env'); \ 
    urllib.urlretrieve('http://goo.gl/D2RB', 'py-env/virtualenv.py')" 
% python py-env/virtualenv.py --no-site-packages py-env 
% source py-env/bin/activate 
% pip install flask SQLAlchemy 

應工作。 virtualenv本身不包含「python」。你運行正確版本的Python(不知道你的發行版上安裝了什麼)?

+0

感謝您的回覆。我剛剛遵循了werkzeug和flask的文檔教程。我剛從網站上下載了virtualenv,並且安裝了python 2.4。我相信如果我得到蟒蛇2.5或更高,那可能會解決我的問題。反正我會嘗試上面的代碼。 – 2011-02-11 14:18:55

+0

virtualenv本身沒有python。你的發行版有。你可以嘗試調用`python2.5`或任何centos用來區分同時安裝的不同python版本。 – akira 2011-02-11 14:58:43

+0

是的,我終於找到了解決方案,問題是我使用Python 2.4調用virtualenv。所以我做了什麼,我安裝了python 2.7以及setuptools並且調用了virtualenv。不管怎樣,謝謝阿基拉。 – 2011-02-15 07:03:12

3

import .module語法在Python 2.5(relative import)推出。所以你必須使用至少2.5這個東西。

0

所以我們可以清楚是什麼意思時,他們說「VIRTUALENV本身沒有蟒蛇」採取相應斌/或/ lib目錄看看創建時,ENV或什麼擔心的是一個可以提供-p標誌創建virtualenv -p python2.7時。所以請按照fear_matrix的說法做,安裝所需的python,然後用它創建一個virtualenv「virtualenv -p python2.7」。也許這對於centos是不同的,但我不這麼認爲。