1,顯然,任何頁面的改動會牽扯到python**的改動**的設計改動會比python**改動更頻繁,所以如果我們將兩者分離開會更方便
2,其次,寫後台python**與設計html是不同的工作,更專業的web開發應該將兩者分開頁面設計者和html/css程式設計師不應該編輯python**,他們應該與html打交道
3,程式設計師寫python**同時頁面設計者寫html模板會更高效,而不是乙個人等待另乙個人編輯同樣的檔案因此,使用django的模板系統分離設計和python**會更乾淨更易維護
簡單來說:
變數要和html盡量分開
html和python要分開
1、確定表達的形式
載入模板
2、確定表達的內容
1、表達內容需要時字典格式
2、封裝資料
from django.template import template
context(data)
3、表達的形式載入表達的內容
template.render(context(data))
舉一些例子
django擁有一套完善的模板系統。變數}
1、傳入前端的變數最外層一定是乙個字典
2、具體的變數可以是 字串、列表、字典等型別
3、變數通過.方法可以呼叫自己的無引數方法、索引
4、如果變數是字典也可以通過.鍵呼叫值
def variable(request):
"""變數案例
"""tem = template(
"""變數常規用法:}
變數常規用法_變數列表:}
變數常規用法_變數索引:}
變數常規用法_變數無引數方法:}
變數常規用法_變數字典:}
變數常規用法_變數字典鍵取值:}
標籤
1、判斷指定條件true或者false,通常判斷乙個變數是否存在或者為真
2、 標籤需要 標籤進行閉合
3、 可以有
def label_if(request):
"""if 標籤
"""tem = template(
"""歡迎登陸 }
請登陸"""
1、判斷兩個量是否相等,通常用於比較
2、 標籤需要 標籤進行閉合
3、 可以有
def label_ifequal(request):
"""ifequal 標籤
"""tem = template(
"""歡迎登陸 } 先生
歡迎登陸 } 女士
1、 標籤需要 標籤進行閉合
2、 標籤採用了和python一樣的for in結構。
3、 迴圈出來的不是html物件只是資料
def label_for(request):
"""ifequal 標籤
"""tem = template(
"""標題
作者型別封面}
}}"""tem = template(
"""} 是第 } 次迴圈 他的父迴圈是第 } 次迴圈
過濾器,對變數進行具體功能的處理
safe 去掉前端轉義
今天先介紹到這裡 感興趣的朋友可以敲一敲
基於 Django 框架的敏捷 Web 開發
前言 傳統 web 開發方式常常需要編寫繁瑣乏味的重複性 不僅頁面表現與邏輯實現的 混雜在一起,而且 編寫效率不高。對於開發者來說,選擇乙個功能強大並且操作簡潔的開發框架來輔助完成繁雜的編碼工作,將會對開發效率的提公升起到很大幫助。幸運的是,這樣的開發框架並不少見,需要做的僅是從中選出恰恰為開發者量...
Django模板的使用
總結了下,一般情況django裡模板用法有多種 以下有省略 設計常用的是最後一種 1 from django.template import context,template t template 與 的組合.c context t.render c 輸出 2 在檢視中使用模板 html 模板 變數...
Django模板的繼承
模板的繼承 1 什麼是模板的繼承 當多個模板 網頁 具備大部分相同的內容時,就可以使用繼承的方式,將相同的東西繼承過來,再增加 修改屬於自己的內容即可 2 模板繼承的方法 1 在父模板中 必須要標識出來哪些內容是允許被修改的 標籤 父模板中正常顯示的東西 block的作用 定義 在子模板中允許被修改...