Flask 依賴兩個(gè)外部庫(kù):Werkzeug 和 Jinja2 。Werkzeug 是一個(gè) WSGI(在 Web 應(yīng)用和多種服務(wù)器之間的標(biāo)準(zhǔn) Python 接口) 工具集。Jinja2 負(fù)責(zé)渲染模板。
那么如何在你的電腦上安裝這一切?雖說(shuō)條條大道通羅馬,但是最強(qiáng)大的方式是virtualenv ,所以我們首先來(lái)看它。
你首先需要 Python 2.6 或更高的版本,所以請(qǐng)確認(rèn)有一個(gè)最新的 Python 2.x 安裝。在 Python 3 中使用 Flask 請(qǐng)參考: Python 3 支持 。
你很可能想在開(kāi)發(fā)中用上 virtualenv,如果你有生產(chǎn)環(huán)境的 shell 權(quán)限,你同樣會(huì)樂(lè)于在生產(chǎn)環(huán)境中使用它。
virtualenv 解決了什么問(wèn)題?如果你像我一樣喜歡 Python,不僅會(huì)在采用 Flask的Web 應(yīng)用中用上 virtualenv,在別的項(xiàng)目中你也會(huì)想用上它。你擁有的項(xiàng)目越多,同時(shí)使用不同版本的 Python 工作的可能性也就越大,或者起碼需要不同版本的 Python 庫(kù)。悲慘現(xiàn)實(shí)是:常常會(huì)有庫(kù)破壞向后兼容性,然而正經(jīng)應(yīng)用不采用外部庫(kù)的可能微乎其微。當(dāng)在你的項(xiàng)目中,出現(xiàn)兩個(gè)或更多依賴性沖突時(shí),你會(huì)怎么做?
virtualenv 拯救世界!virtualenv 為每個(gè)不同項(xiàng)目提供一份 Python 安裝。它并沒(méi)有真正安裝多個(gè) Python 副本,但是它確實(shí)提供了一種巧妙的方式來(lái)讓各項(xiàng)目環(huán)境保持獨(dú)立。讓我們來(lái)看看 virtualenv 是怎么工作的。
如果你在 Mac OS X 或 Linux 下,下面兩條命令可能會(huì)適用:
$ sudo easy_install virtualenv
或更好的:
$ sudo pip install virtualenv
上述的命令會(huì)在你的系統(tǒng)中安裝 virtualenv。它甚至可能會(huì)存在于包管理器中,如果你用的是 Ubuntu,可以嘗試:
$ sudo apt-get install python-virtualenv
如果你用的是 Windows ,而且沒(méi)有 easy_install 命令,那么你必須先安裝這個(gè)命令。查閱 Windows 下的 pip 和 distribute 章節(jié)了解如何安裝。之后,運(yùn)行上述的命令,但是要去掉 sudo 前綴。
virtualenv 安裝完畢后,你可以立即打開(kāi) shell 然后創(chuàng)建你自己的環(huán)境。我通常創(chuàng)建一個(gè)項(xiàng)目文件夾,并在其下創(chuàng)建一個(gè) venv 文件夾
$ mkdir myproject$ cd myproject$ virtualenv venvNew python executable in venv/bin/pythonInstalling distribute............done.
現(xiàn)在,無(wú)論何時(shí)你想在某個(gè)項(xiàng)目上工作,只需要激活相應(yīng)的環(huán)境。在 OS X 和Linux 上,執(zhí)行如下操作:
$ . venv/bin/activate
下面的操作適用 Windows:
$ venv\scripts\activate
無(wú)論通過(guò)哪種方式,你現(xiàn)在應(yīng)該已經(jīng)激活了 virtualenv(注意你的 shell 提示符顯示的是當(dāng)前活動(dòng)的環(huán)境)。
現(xiàn)在你只需要鍵入以下的命令來(lái)激活 virtualenv 中的 Flask:
$ pip install Flask
幾秒鐘后,一切都搞定了。
這樣也是可以的,雖然我不推薦。只需要以 root 權(quán)限運(yùn)行 pip:
$ sudo pip install Flask
(在 Windows 上,在管理員權(quán)限的命令提示符中去掉 sudo 運(yùn)行這條命令 。)
如果你需要最新版本的 Flask,有兩種方法:你可以使用 pip 拉取開(kāi)發(fā)版本,或讓它操作一個(gè) git checkout。無(wú)論哪種方式,依然推薦使用 virtualenv。
在一個(gè)全新的 virtualenv 中 git checkout 并運(yùn)行在開(kāi)發(fā)模式下:
$ git clone http://github.com/mitsuhiko/flask.gitInitialized empty Git repository in ~/dev/flask/.git/$ cd flask$ virtualenv venv --distributeNew python executable in venv/bin/pythonInstalling distribute............done.$ . venv/bin/activate$ python setup.py develop...Finished processing dependencies for Flask
這會(huì)拉取依賴并激活 git head 作為 virtualenv 中的當(dāng)前版本。然后你只需要執(zhí)行 git pull origin 來(lái)升級(jí)到最新版本。
沒(méi)有 git 時(shí),獲取開(kāi)發(fā)版本的替代操作:
$ mkdir flask$ cd flask$ virtualenv venv --distribute$ . venv/bin/activateNew python executable in venv/bin/pythonInstalling distribute............done.$ pip install Flask==dev...Finished processing dependencies for Flask==dev
在 Windows 下, easy_install 的安裝稍微有點(diǎn)麻煩,但還是相當(dāng)簡(jiǎn)單。最簡(jiǎn)單的方法是下載 distribute_setup.py 文件并運(yùn)行它。運(yùn)行這個(gè)文件最簡(jiǎn)單的方法就是打開(kāi)你的下載文件夾并且雙擊這個(gè)文件。
下一步,把你的 Python 安裝中的 Scripts 文件夾添加到 PATH 環(huán)境變量來(lái),這樣 easy_install 命令和其它 Python 腳本就加入到了命令行自動(dòng)搜索的路徑。做法是:右鍵單擊桌面上或是“開(kāi)始”菜單中的“我的電腦”圖標(biāo),選擇“屬性”,然后單擊“高級(jí)系統(tǒng)設(shè)置”(在 Windows XP 中,單擊“高級(jí)”選項(xiàng)卡),然后單擊“環(huán)境變量”按鈕,最后雙擊“系統(tǒng)變量”欄中的“Path”變量,并加入你的 Python解釋器的 Scripts 文件夾。確保你用分號(hào)把它和現(xiàn)有的值分隔開(kāi)。假設(shè)你使用Python 2.7 且為默認(rèn)目錄,添加下面的值:
;C:\Python27\Scripts
如此,你就搞定了!打開(kāi)命令提示符并執(zhí)行 easy_install 測(cè)試它是否正常工作。如果你開(kāi)啟了 Windows Vista 或 Windows 7 中的用戶賬戶控制,它應(yīng)該會(huì)提示你使用管理員權(quán)限。
現(xiàn)在你有了 easy_install ,你可以用它來(lái)安裝 pip:
> easy_install pip
聯(lián)系客服