摘要:模板模板的基本了解準備工作自身提供了一個輕量級快速并且靈活的模板語言在模塊中。
Tornado模板
1.模板的基本了解準備工作
Tornado自身提供了一個輕量級、快速并且靈活的模板語言在tornado.template模塊中。
模板就是格式固定的網頁:格式是固定的,內容是變化的模板是一個允許嵌入Python代碼片段的HTML文件
在tornado文件夾下新建一個lesson4文件夾 在該文件夾下新建一個start1.py文件 先添加一些基本內容
然后按下列步驟操作
1、在Application的參數中添加template_path 配置,指定模板的路徑和靜態文件的路徑
template_path="templates", static_path="static",
2、在lesson4文件夾下新建template文件夾(用來存放html文件)
在lesson4文件夾下新建static文件夾(用來存放圖片,css,js等靜態文件)
3、使用render方法渲染模板 添加以下代碼
(r"/",IndexHandler), # 添加路由 class IndexHandler(tornado.web.RequestHandler): def get(self): self.render("index.html")
這段代碼告訴Tornado在templates文件夾下找到一個名為index.html 的文件,讀取其中的內容,并且發送給瀏覽器
4、在templates文件夾下新建一個index.html文件
在body中添加下列代碼
hello boys and girls!
運行后顯示的結果
{{ ? }} ? 表達式用雙大括號包圍,內容可以是任何python表達式 ,在雙大括號中的單詞是占位符 {% ? %} ? 模板控制語句以{% ?%}包圍 {# #} 模版注釋格式
雙大括號中放置變量名或表達式,變量名與傳入的關鍵字參數名要相同
在templates中新建IndexHandler.html
并在這個文件的body中添加以下代碼
在templates中新建index2.html文件
并在body中加入以下代碼
歡迎用戶 {{ username }}登錄
處理器文件
class IndexHandler(tornado.web.RequestHandler): def get(self): self.render("index1.html") def post(self): username = self.get_argument("name","no") self.render("index2.html",username=username)
tornado的模板處理已經十分方便,在{{}}中可以傳入任意的python表達式:
#為了測試方便,新建一個簡單的路由 (r"/temp",TempHandler), class TempHandler(tornado.web.RequestHandler): def get(self): username = self.get_argument("name","no") self.render("temp.html",username=username)
接下來我們在index.html文件中添加以下代碼
hello boys and girls!
{{ 10+27 }}
{{ time.time() }}
{{ haha() }}
在start1.py中的TempHandler中添加以下代碼
def haha(self): return "這里是tornado" def get(self): username = self.get_argument("name","no") import time li = ["a","b","c","d"] self.render("index.html", username=username, time=time, haha=self.haha, li=li )
控制語句的大部分就像對應的Python語句一樣工作
控制語句的返回以最近的{% end %} 結束
if條件判斷
{% if condition %} ?????... {% elif condition %} ?????... {% else %} ?????... {% end %}
例子:
{% if username!="no" %} 歡迎用戶 {{ username }} 登錄 {% else %} 您還沒有登錄 {% end %}
for循環
{% for var in expr %} # 注意在模版中的控制語句都不需要加冒號 ?????... {% end %}
在html文件中的寫法
{% for i in li%} {{ i }}
{% end %}
以上就是模板的基本知識,我們在后面還會深入學習。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/52044.html
摘要:模板模板的基本了解準備工作自身提供了一個輕量級快速并且靈活的模板語言在模塊中。 Tornado模板 1.模板的基本了解 準備工作 Tornado自身提供了一個輕量級、快速并且靈活的模板語言在tornado.template模塊中。 模板就是格式固定的網頁:格式是固定的,內容是變化的模板是一個允許嵌入Python代碼片段的HTML文件 在tornado文件夾下新建一個lesson4文件夾...
摘要:第一次使用在里面寫的時候我被結果驚呆了大家知道的偷懶寫法是直接在里面開工但是的模版無情的刪除了所有縮進對于和文件來說這就是壓縮打開的一看如果是和結尾的模版文件渲染就會默認開啟當時很沮喪不過下一秒鐘我們就想到了解決方法把文件名改為不就好了你想 第一次使用在 tornado 里面寫 coffeescript 的時候, 我被結果驚呆了. 大家知道 coffeescript 的偷懶寫法是直接...
摘要:清楚了以上流程,我們直接來看函數主要用作初始化應用監聽端口以及啟動。其中就是保存聊天室所有聊天消息的結構。關于的解讀我會放到閱讀源碼時講。然后把消息加到緩存里,如果緩存大于限制則取最新的條消息。 tornado 源碼自帶了豐富的 demo ,這篇文章主要分析 demo 中的聊天室應用: chatdemo 首先看 chatdemo 的目錄結構: ├── chatdemo.py ├── ...
摘要:總結一下與大家分享。我是系統,我是通過安裝的。后來導致我執行也失敗了,最后將升級了一把,然后卸載,再重新安裝,工作正常了。安裝還有權限問題,我最后是通過權限安裝的。 前段時間一直使用pycharm寫pandas程序,對于大數據開發而言,開發一般是走一步想一步,pycharm不適合。網上推薦使用jupyter notebook,它是一個web版的編輯器,原來是IPython的一部分,后來...
閱讀 786·2021-08-23 09:46
閱讀 928·2019-08-30 15:44
閱讀 2586·2019-08-30 13:53
閱讀 3039·2019-08-29 12:48
閱讀 3847·2019-08-26 13:46
閱讀 1780·2019-08-26 13:36
閱讀 3510·2019-08-26 11:46
閱讀 1408·2019-08-26 10:48