摘要:如果你使用而不是硬編碼的話,你的代碼不需要改變。如果你在每個(gè)引用靜態(tài)資源的文件中硬編碼靜態(tài)路徑部分,你將不得不手動(dòng)修改每個(gè)模板。
我相信當(dāng)你在看這篇文章的時(shí)候,你一定已經(jīng)了解了 模板Templates 這個(gè)概念。
在Tornado Web應(yīng)用中使用render方法傳送HTML給瀏覽器,即將模板在瀏覽器中渲染出來(lái)。
我們知道render函數(shù)參數(shù)包含兩個(gè)部分:第一個(gè)部分是模板文件。我們用到的模板就是那些html文件。第二個(gè)部分是我們要傳遞的數(shù)據(jù)。除了單純的html標(biāo)簽內(nèi)容,我們還可以填充Python變量、控制語(yǔ)句、函數(shù)等到模板中,以生成我們想要的動(dòng)態(tài)網(wǎng)頁(yè)。
總結(jié)
輸出變量值、表達(dá)式值(調(diào)用函數(shù)應(yīng)該也可以算到這里面?)
{{ 變量名 }}{{ 表達(dá)式 }}
賦值語(yǔ)句
{%set 變量名=”hello world” %}
控制語(yǔ)句(注意:用end結(jié)尾)
{% if 邏輯表達(dá)式 %}表達(dá)式為真
{% else %}表達(dá)式為假
{% end %}//記得用end結(jié)尾 {% for one in blogs %}#循環(huán)語(yǔ)句{{ title }}
{{ content }}
{% end %}//記得哦
對(duì)了,在《Tornado 簡(jiǎn)單入門教程(一)——Demo1》中還有一個(gè)東西沒說。
我們?cè)?b>settings里設(shè)置了static_path參數(shù)。static_url函數(shù)利用這個(gè)參數(shù),為我們生成引用文件的正確路徑。
“那么為什么使用static_url而不是在你的模板中硬編碼呢?有如下幾個(gè)原因。其一,static_url函數(shù)創(chuàng)建了一個(gè)基于文件內(nèi)容的hash值,并將其添加到URL末尾(查詢字符串的參數(shù)v)。這個(gè)hash值確保瀏覽器總是加載一個(gè)文件的最新版而不是之前的緩存版本。無(wú)論是在你應(yīng)用的開發(fā)階段,還是在部署到生產(chǎn)環(huán)境使用時(shí),都非常有用,因?yàn)槟愕挠脩舨槐卦贋榱丝吹侥愕撵o態(tài)內(nèi)容而清除瀏覽器緩存了。
另一個(gè)好處是你可以改變你應(yīng)用URL的結(jié)構(gòu),而不需要改變模板中的代碼。例如,你可以配置Tornado響應(yīng)來(lái)自像路徑/s/filename.ext的請(qǐng)求時(shí)提供靜態(tài)內(nèi)容,而不是默認(rèn)的/static路徑。如果你使用static_url而不是硬編碼的話,你的代碼不需要改變。比如說,你想把靜態(tài)資源從我們剛才使用的/static目錄移到新的/s目錄。你可以簡(jiǎn)單地改變靜態(tài)路徑由static變?yōu)?b>s,然后每個(gè)使用static_url包裹的引用都會(huì)被自動(dòng)更新。如果你在每個(gè)引用靜態(tài)資源的文件中硬編碼靜態(tài)路徑部分,你將不得不手動(dòng)修改每個(gè)模板?!薄禝ntroduction
to Tornado》
強(qiáng)烈推薦初學(xué)者把《Introduction to Tornado》認(rèn)真看一遍。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/37512.html
摘要:而這里的方法則是告訴來(lái)讀取模板文件,并將結(jié)果返回給瀏覽器。依舊可以使用,等條件控制語(yǔ)句,但是要記得以結(jié)尾。替換字符串中的字符為編碼形式。模塊模塊是封裝模板中包含的標(biāo)記樣式以及行為的可復(fù)用組件。 表單和模板 import os.path import tornado.httpserver import tornado.ioloop import tornado.options impo...
摘要:在的模板中,功能還是很不少的,本講介紹模板語(yǔ)法先。然后在模板中,利用語(yǔ)句,依次顯示得到的列表中的元素。的代碼不變,只修改模板的代碼,重點(diǎn)理解模板中的語(yǔ)句寫法。這樣就是實(shí)現(xiàn)了模板中變量的使用。 Come to me, all you that are weary and are carrying heavy burdens, and I will give you rest. Ta...
摘要:模板模板的基本了解準(zhǔn)備工作自身提供了一個(gè)輕量級(jí)快速并且靈活的模板語(yǔ)言在模塊中。 Tornado模板 1.模板的基本了解 準(zhǔn)備工作 Tornado自身提供了一個(gè)輕量級(jí)、快速并且靈活的模板語(yǔ)言在tornado.template模塊中。 模板就是格式固定的網(wǎng)頁(yè):格式是固定的,內(nèi)容是變化的模板是一個(gè)允許嵌入Python代碼片段的HTML文件 在tornado文件夾下新建一個(gè)lesson4文件夾...
摘要:模板模板的基本了解準(zhǔn)備工作自身提供了一個(gè)輕量級(jí)快速并且靈活的模板語(yǔ)言在模塊中。 Tornado模板 1.模板的基本了解 準(zhǔn)備工作 Tornado自身提供了一個(gè)輕量級(jí)、快速并且靈活的模板語(yǔ)言在tornado.template模塊中。 模板就是格式固定的網(wǎng)頁(yè):格式是固定的,內(nèi)容是變化的模板是一個(gè)允許嵌入Python代碼片段的HTML文件 在tornado文件夾下新建一個(gè)lesson4文件夾...
閱讀 2402·2021-10-09 09:41
閱讀 3206·2021-09-26 09:46
閱讀 851·2021-09-03 10:34
閱讀 3191·2021-08-11 11:22
閱讀 3384·2019-08-30 14:12
閱讀 724·2019-08-26 11:34
閱讀 3355·2019-08-26 11:00
閱讀 1791·2019-08-26 10:26