python模板引擎Jinja2基礎

2021-08-10 08:38:57 字數 1370 閱讀 9007

官方文件:

分隔符(delimiters)

語句(statements)

} 列印模板輸出的表示式(expressions)

注釋# ... ## 行語句(line statements)

變數(variables)
foo.bar

foo['bar']

過濾器(filters)

}#(title(striptags(name))).

過濾器列表

測試(tests)

value

ofvariable: }

variable is not defined

測試列表

注釋(comments)

...#}

空格控制 (whitespace control)

預設的設定:

- 如果末尾有換行符,則去除;

- 其他空格原樣保留。

yay

div>

<!-- 結果-->

yaydiv>

yaydiv>

<!-- 結果-->

yaydiv>

jinja2語句佔據的空行,你自己輸出的空格,tab都將保留。

如果要去掉jinja2語句佔據的空行,可以通過設定jinja2的環境變數實現:

或者像這樣手動新增乙個減號(注意和%之間沒有空格):

yay

兩者實現的效果相同,如下:

yaydiv>

如果語句塊的前後都加上減號:

yay

渲染後會是這樣:

yay

轉義(escaping)

}和

}}li>

ul>

行語句(line statements)

# for item in seq

}li>

# endfor

ul>

}li>

ul>

模板繼承(template inheritance)

html轉義(html escaping)

}

或者|safe

其他

Jinja 模板引擎

模板實質上是乙個靜態的包含html語法的全部或片段的文字檔案,也可以包含變數表示的動態部分,使用真實值替換網頁模板的變數,生成對應的資料的html片段。這一過程稱為渲染。flask提供了jinja 2 模板引擎來渲染模板。1.例項 1.先建立乙個html文件 2.建立乙個 py檔案 from fla...

Jinja 2模板引擎

flask 提供了jiaja 2模板引擎渲染模板,下面逐步介紹其模板渲染機制。index.html lang en charset utf 8 這是首頁中文字 title 這是首頁中文字 h1 head body html user.html lang en charset utf 8 這是使用者中...

Jinja2模板引擎

檢視函式的主要作用是生成請求的響應,這是最簡單的請求。實際上,檢視函式有兩個作用 處理業務邏輯和返回響應內容。在大型應用中,把業務邏輯和表現內容放在一起,會增加 的複雜度和維護成本。本節學到的模板,它的作用即是承擔檢視函式的另乙個作用,即返回響應內容。使用模板的好處 兩個概念 渲染模版函式 使用 變...