W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Jinja2 使用一個(gè)名為?Environment?的中心對(duì)象。這個(gè)類的實(shí)例用于存儲(chǔ)配 置、全局對(duì)象,并用于從文件系統(tǒng)或其它位置加載模板。即使你通過:class:Template?類的構(gòu)造函數(shù)用字符串創(chuàng)建模板,也會(huì)為你自動(dòng)創(chuàng)建一個(gè)環(huán)境,盡管是共享的。
大多數(shù)應(yīng)用在應(yīng)用初始化時(shí)創(chuàng)建一個(gè)?Environment?對(duì)象,并用它加載模板。 在某些情況下,如果使用多份配置,使用并列的多個(gè)環(huán)境無論如何是有用的。
配置 Jinja2 為你的應(yīng)用加載文檔的最簡(jiǎn)單方式看起來大概是這樣:
from jinja2 import Environment, PackageLoader
env = Environment(loader=PackageLoader('yourapplication', 'templates'))
這會(huì)創(chuàng)建一個(gè)默認(rèn)設(shè)定下的模板環(huán)境和一個(gè)在?yourapplication?python 包中的?templates文件夾中尋找模板的加載器。多個(gè)加載器是可用的,如果你需要從 數(shù)據(jù)庫(kù)或其它資源加載模板,你也可以自己寫一個(gè)。
你只需要調(diào)用?get_template()?方法從這個(gè)環(huán)境中加載模板,并會(huì)返回已加載的?Template:
template = env.get_template('mytemplate.html')
用若干變量來渲染它,調(diào)用?render()?方法:
print template.render(the='variables', go='here')
使用一個(gè)模板加載器,而不是向?Template?或?Environment.from_string()?傳遞字符串,有許多好處。除了使用上便利, 也使得模板繼承成為可能。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: