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

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

自學Python之路-django模板--模板繼承_觀速訊


(資料圖片)

點擊返回 自學Python之路-Diang

1 Django模板介紹

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

2 Django模板的位置

  • 第一種在應用中建立templates目錄,好處不需要注冊,不好的地方,有多個應用的時候不能復用頁面
  • 第二種是放在工程的目錄下,好處是如果有多個應用,可以調用相同的頁面,需要注

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

本質上來說,模板繼承就是先構造一個基礎框架模板,然后在其子模板中對它所包含站點公?部分和定義塊進行重載。

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

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

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

注意事項:

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

.......

關鍵詞:

相關內(nèi)容