- Flask Web開發:基于Python的Web應用開發實戰(第2版)
- (美)米格爾·格林貝格
- 736字
- 2020-05-06 16:36:50
第一部分 Flask簡介
第1章 安裝
在大多數標準中,Flask都算是小型框架,小到可以稱為“微框架”。Flask非常小,因此你一旦能夠熟練使用它,很可能就能讀懂它所有的源碼。
但是,小并不意味著它比其他框架的功能少。Flask自開發伊始就被設計為可擴展的框架,它具有一個包含基本服務的強健核心,其他功能則可通過擴展實現。你可以自己挑選所需的擴展包,組成一個沒有附加功能的精益組合,完全滿足自身需求。
Flask有3個主要依賴:路由、調試和Web服務器網關接口(WSGI,Web server gateway interface)子系統由Werkzeug提供;模板系統由Jinja2提供;命令行集成由Click提供。這些依賴全都是Flask的開發者Armin Ronacher開發的。
Flask原生不支持數據庫訪問、Web表單驗證和用戶身份驗證等高級功能。這些功能以及其他大多數Web應用需要的核心服務都以擴展的形式實現,然后再與核心包集成。開發者可以任意挑選符合項目需求的擴展,甚至可以自行開發。這和大型框架的做法相反,大型框架往往已經替你做出了大多數決定,難以(有時甚至不允許)使用替代方案。
本章介紹如何安裝Flask。在這個過程中,你只需要一臺安裝了Python的計算機。
本書中的代碼示例已在Python 3.5和Python 3.6中測試過。如果你愿意,也可以使用Python 2.7。不過這一版將在2020年后停止維護,因此強烈建議你使用3.x版。
如果你決定使用運行微軟Windows系統的計算機,那么要做個選擇:要么使用基于Windows的“原生”工具集,要么設置計算機,沿用基于Unix的主流工具集。本書中的代碼基本上在兩種方式下都能正常運行。偶有差異時,本書采用Unix方式,不過也會給出針對Windows的說明。
如果你決定采用Unix工作流程,有幾個選擇。如果你使用的是Windows 10,可以啟用WSL(Windows subsystem for Linux)。這是官方支持的功能,在Windows原生界面中獨立運行Ubuntu Linux。通過WSL可以訪問bash shell和基于Unix的全套工具集。如果你的系統不支持WSL,Cygwin也是不錯的選擇。這是一個開源項目,模仿Unix的POSIX子系統,而且移植了大量Unix工具。