template_path='templates',static_path='static',
歡迎}登入
class templateshandler(tornado.web.requesthandler):
def get(self):
self.write('templates')
self.render('01in_out.html')
def post(self, *args, **kwargs):
user = self.get_argument('name', 'no')
self.render('02templates.html',
username=user
) #將引數傳入模板檔案.
在tornado中,模板就是乙個html檔案,但是模板通過模板語法,由tornado服務渲染之後,可以動態的往頁面中填入資料
tornado自帶模板語法,不需要再用其他的模板外掛程式
模板概念
必須掌握:模板就是html檔案,只是其中加入了模板語法,需要伺服器的渲染,才能正常顯示資料
用 } 中間是任何 python 表示式,或者是乙個變數
示例:}
}#在handler頁面中要import time,並且要在handler中傳入time引數.
其他的模板指令
示例 this is if
在模板中要注釋python表示式的執行,需要使用這個模板語法
示例 }
取消執行,如果不想執行內容,需要在頁面上列印出模板符號,只需要加上感嘆號( ! )即可
示例 }
this is if
}在模板裡定義乙個變數要用set
對變數的改變也要用set
if判斷
在模板中可以使用 if 判斷
注意:最後需要以 結尾
示例
歡迎}登入
請登入
for 迴圈
在 tornado 模板中可以使用 for 迴圈
注意:最後需要以 結尾示例}
while 迴圈
在 tornado 模板中可以使用 while 迴圈
注意:最後需要以 結尾
示例
}
除此之外,異常處理 try 也可以在模板中使用,但是這樣做會讓模板變得像 python 模組一樣,因此並不建議大家這麼做
}
轉義頁面並沒有解析,只是當作乙個字串,直接在頁面上列印出來
tornado預設是自動的轉義,傳入的資料都會當作字串,不會被瀏覽器解析
模板去掉轉義
區域性去掉轉義
raw
raw 可以自模板中去掉轉義,讓 tornado 在渲染的時候不去轉義變數
模板去掉轉義
模板去轉義/全域性取消轉義,相當於全部加raw
autoescape
在模板中新增上面**之後,當前模板不再轉義
escape
}在開啟模板不轉義之後,可以使用 escape 來新增轉義
全域性去掉轉義
autoescape=none,
autoescape
去掉整個專案的轉義,配置之後,整個專案中的模板不再轉義
前端注釋的內容不顯示但是還是會執行的.
static_path='static',
兩種引入方式
路由配置
新增此配置之後,tornado就能自己找到靜態檔案
static/
自動查詢
static_url
新增版本號
使用此方法時,tornado 會自動地給靜態檔案新增版本號,第2次請求的時候,如果版本號更改了,瀏覽器會自動的快取新的靜態檔案,
html裡面的注釋寫法:
在瀏覽器不顯示但是執行.
Tornado之模板基礎
self.write 我在下面 self.render 01in out.html defpost self,args,kwargs name self.get argument name no self.write name urllist 課堂 知乎 atga 模板轉義,尖括號被變成其他的了 s...
tornado框架介紹
tar xvzf tornado 1.2.1.tar.gz cd tornado 1.2.1 python setup.py build sudo python setup.py install 安裝要求 需要先安裝 python2.7 mac os x 10.6 python 2.6 sudo e...
tornado入門 模板
繼承與重寫 error this text is not shown 其他用法 自帶linkify 將在頁面顯示鏈結 自定義方法 在handler裡定義函式,新增到self.ui字典 class homehandler tornado.web.requesthandler def test stri...