Flask_wtf是Flask的一個表單擴展,對于表單驗證比較方便。當然剛看了Flask web開發的前4章,很多東西還不是很懂,今天才知道。
原來wtf是wtform的縮寫,而wtform是另外一個表單模塊。這樣對它們倆的關系就稍微清楚一些。
之前只是看了字符串領域和提交領域,所以今天看到文件Field就有點摸不著頭腦,它們的共性是什么呢?
根據模型、控制器和視圖的分工,這幾個Field明顯是模型,定義了自身是什么類型,有的是字符串,有的是email,有的是數字,有的是UUID。
明顯他們只是數據,不可能單獨發揮作用,那么路由和視圖函數就是控制器。例如:當用戶提交有效數據時,通過form.name
把name參數傳給Jinja2模板。
現在Jinja2可以使用name參數了,可以使用類似``{% if %}name這樣的條件判斷,來做用戶歡迎界面。
然后模板繼續使用import bootstrap/wtf.html as wtf
后,再用``wtf.quick_form(form)來把Jinja2的模板變得統一好看起來。