久久亚洲国产精品视频,中国AV片,最近中文字幕免费大全,国产亚洲精品久久久999功能介绍,欧美色女人

金融情報(bào)局網(wǎng)_中國金融門戶網(wǎng)站 讓金融財(cái)經(jīng)離的更近

自學(xué)Python之路-django模板--模板繼承_觀速訊


(資料圖片)

點(diǎn)擊返回 自學(xué)Python之路-Diang

1 Django模板介紹

  • 模板用于快速生成HTML動(dòng)態(tài)頁面返回給客戶端,模板是一個(gè)文本,用于分離文檔的表現(xiàn)形式和內(nèi)容。
  • 模板定義了占位符以及各種用于規(guī)范文檔該如何顯示的模板標(biāo)簽。
  • 模板通常用于產(chǎn)生HTML,但是Django的模板也能產(chǎn)生任何基于文本格式的文檔。
  • 模板包含兩個(gè)部分:HTML代碼和模板標(biāo)簽
  • 一個(gè)項(xiàng)目可以有一個(gè)或者是多個(gè)模板引擎,Django里面主要兩個(gè)模板引擎:DTL、Jinja2。

2 Django模板的位置

  • 第一種在應(yīng)用中建立templates目錄,好處不需要注冊(cè),不好的地方,有多個(gè)應(yīng)用的時(shí)候不能復(fù)用頁面
  • 第二種是放在工程的目錄下,好處是如果有多個(gè)應(yīng)用,可以調(diào)用相同的頁面,需要注

在整個(gè)網(wǎng)站中,如何減少共用頁面區(qū)域(比如站點(diǎn)導(dǎo)航)所引起的重復(fù)和冗余代碼?Django 解決此類問題的首選法是使一種優(yōu)雅的策略—— 模板繼承 。

本質(zhì)上來說,模板繼承就是先構(gòu)造一個(gè)基礎(chǔ)框架模板,然后在其子模板中對(duì)它所包含站點(diǎn)公?部分和定義塊進(jìn)行重載。

  • {% extends %} 繼承父模板
  • {% block %} 子模板可以重載這部分內(nèi)容。
  • {{ block.super }}調(diào)用父模板的代碼

使用繼承的一種常見方式是下面的三層法:

  • 創(chuàng)建base.html模板,在其中定義站點(diǎn)的主要外觀感受。這些都是不常修改甚從不修改的部分。
  • 為每種類型的頁面創(chuàng)建獨(dú)立的模板,例如論壇頁面或者圖片庫。這些模板拓展相應(yīng)的區(qū)域模板。
  • 自己的頁面繼承自模板,覆蓋父模板中指定block

注意事項(xiàng):

  • 如果在模板中使用 {% extends %} ,必須保證其為模板中的第一個(gè)模板標(biāo)記。否則,模板繼承將不起作 用。
  • 一般來說,基礎(chǔ)模板中的 {% block %} 標(biāo)簽越多越好。如果發(fā)覺自己在多個(gè)模板之間有重復(fù)代碼,你應(yīng)該考慮將該代碼放置到父模板的某個(gè) {% block %} 中。
  • 不在同一個(gè)模板中定義多個(gè)同名的 {% block %} 。
  • 多數(shù)情況下, {% extends %} 的參數(shù)應(yīng)該是字符,但是如果直到運(yùn)行時(shí)方能確定父模板名稱,這個(gè)參數(shù)也可以是個(gè)變量。

.......

關(guān)鍵詞:

相關(guān)內(nèi)容