Flask Web程序的模板

Flask Web程序的模板

之前示例提到了Flask Web的基本結構,那是時候,路由,對應視圖函數是直接返回html代碼的,也說了那種方式非常不易維護。

代碼,除了能實現功能外,還要給人看的,還要讓人維護的,所以,易維護的程序,簡單的編寫形式,良好的代碼結構,都是很有必要的,值得被提倡的。

Flask Web程序的模板

模板,專門針對視圖函數,就起著簡化代碼的功能。視圖函數的作用是很明確的,即生成請求的響應,但通常,請求會改變程序的狀態,這種變化也會在視圖函數中產生。

例如,張三在網站中註冊了一個新賬戶,他在輸入框輸入賬號及密碼後,點擊註冊。服務器端會接收到包含用戶輸入數據的請求,然後Flask把請求分發到處理請求的視圖函數。這個視圖函數是需要訪問數據庫的,在數據庫中添加一條記錄,表示添加了新用戶,然後生成響應返回給瀏覽器。這個例子的兩個過程,分部稱為業務邏輯和表現邏輯

Flask Web程序的模板

業務邏輯和表現邏輯混合在一起會導致代碼難以理解和維護的。如果把表現邏輯移到模板中能夠提升程序的可維護性,例如,一個表格html代碼,它的數據從數據庫中動態讀取出來。

那麼模板是什麼呢?模板就是一個包含響應文本的文件,當中包含用佔位符表示的動態部分,具體的值是根據請求上下文動態生成。使用真實值替換變量,再返回最終中得到的響應字符串,這一過程稱為渲染。

為了渲染模板,Flask默認使用Jinja2的強大模板引擎,他能進行結構控制,當然這裡涉及太多細節,估計也沒人會看,今天就先引到這裡。

狗書學習,待續未完。。。


分享到:


相關文章: