flask Template
- 包括兩個部分:
- 1.靜態HTML
- 2.動態插入的代碼段
- 對比一下 thymeliphy or struct2 一樣的事情
變量和標籤
變量:
{{ var}}
- 變量不存在,默認忽略
操作(標籤)
{% tag %}
- 控制邏輯
- 使用外部表達式
- 創建變量
- 宏定義(函數新加)
使用:
- for(for後面能夠接else)(python裏面可以)
- for標籤下面又loop(迭代器)first,last,index等等
- index從1開始,index0從0開始計數。
- if
{$ if a==b $}
pass
{$endif$}
結構標籤
-
extends:
拿出一個通用的html混合片段。
寫一個html裏面挖好坑,放好block,等着後面去填; -
填和寫的語法類似
{% block xx%}
{%endblock%}
如果不覆蓋之前寫好的部分,那就使用{{super()}}
- include: 將小的html片段加到裏面來
- 宏定義:在模版中定義一些函數來生成html
{%macro fuctionname(parameter)%}
{%endmacro%}
// 在不同文件調用:
{% from' ' import functionname %}
mvc mvp mvvm(雙向綁定)
過濾器:
- lower
- capitalize
- upper
- reverse
- 支持自定義過濾器
flask-bootstrap
- 安裝,初始化對象 Bootstrap 很方便的使用bootstrap的組建。
- 相當於在模版上自己加東西:十分方便快捷
- {%extends ‘bootstrap/base.html’%}
屬性:
-
html_attribs:給整個html添加屬性
-
html:
- head
- title(defeat)
- metas
- styles
- body_attribs
- body
- navbar
- content
- scripts
- head
-
也針對ie8,谷歌,分頁也有一些基礎頁面;
總結回顧:
flask:
- views
request對象;
- 一些屬性:
response對象;
abort終止
鉤子函數:errorhander app所在的路由(全局) 和 藍圖路由(本藍圖) 註冊的區別;
render_template:將模版渲染成html字符串
會話技術:其實就是來的時候給你發個令牌認識你,之後你每次訪問都帶上這個令牌。
- cookie
- session:
falsk中處理;存儲在了cookie中(序列化完,還是存儲在客戶端)
flask-session: 將session數據存儲在數據庫 or 文件系統中;
- Template:
結構標籤:
- block
- extends
- include
- macro:在html中定義函數
過濾器: 可以多個過濾器;
flask-bootstrap: 繼承bootstrap
- 爲開發者提供了一些默認的模版,並且可以使用他的一些組建