在使用django進行web開發時,往往會構造乙個基礎框架模板即base.html,而後在其子模板中對它所包含站點公用部分和定義塊進行過載。
首先建立乙個base.html,原始碼為:
thanks for visiting my site.
這個叫做base.html的模板定義了乙個簡單的html框架文件,等會我們將在我們的站點中的頁面使用它。子模板的作用就是過載、新增
或保留那些塊的內容。
現在新建乙個current_datetime.html模板來使用它:
the current time
it is now }.
再新建乙個hours_ahead.html模板,原始碼為:
future time
in } hour(s),it will be }.
上面的部分非html標籤等會再來解釋它,現在在views.py中新建兩個函式,index4,與index5,分別對應這兩個模板。原始碼為:
def index4(req,offset):
offset=int(offset)
next_time=datetime.datetime.now()+datetime.timedelta(hours=offset)
return render_to_response("hours_ahead.html",)
def index5(req):
now=datetime.datetime.now()
return render_to_response('current_datetime.html',)
在url中的配置為:
url(r'^hours_ahead/(\d$)','blog.views.index4'),
url(r'^current_datetime/$','blog.views.index5'),
現在啟動伺服器,在瀏覽器中檢視效果,current_datetime.html為:
hours_ahead.html中的效果為:
如此兩個html效果就顯示出來了,同時也解釋一下base.html中所起的作用,兩個html中都使用了標記,
這個就是繼承base.html中的內容,在使用 時,中間的內容便是插入在使用了base.html兩個標籤的
中間,由此便極大的避免了**的冗餘。每個模板只包含自己獨一無二的**,無需多餘的部分,而如果想要進行站點級的設計修改,僅需
修改base.html,所有其他模板會立即反映出所做修改。
上述,便是django之繼承使用base.html模板。
Django之模板繼承
為了在django模板配置中減少 的冗餘,需使用模板繼承 1 建立乙個base.html把需要顯示的頁面內容寫在裡面 2 在title部分寫個盒子,以後誰來擴充套件就在這裡面新增相應的內容,即完成title.html 3 建立乙個title.html,讓title.html繼承base.html 必...
django模板繼承
1 本質上說 模板繼承就是先構造乙個基礎框架模板,而後在其子模板中對它所包含站點共用部分和定義進行過載。建立 base.html模板 謝謝對 的支援 2 建立子模板test4.html 現在時間 現在時間是 3 編寫檢視函式 views.py def test4 request 51 now dat...
Django模板的繼承
模板的繼承 1 什麼是模板的繼承 當多個模板 網頁 具備大部分相同的內容時,就可以使用繼承的方式,將相同的東西繼承過來,再增加 修改屬於自己的內容即可 2 模板繼承的方法 1 在父模板中 必須要標識出來哪些內容是允許被修改的 標籤 父模板中正常顯示的東西 block的作用 定義 在子模板中允許被修改...