日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Django从理论到实战(part23)--模板继承

發布時間:2023/12/19 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Django从理论到实战(part23)--模板继承 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

學習筆記,僅供參考

參考自:Django打造大型企業官網–Huang Y;

本系列Blog以應用為主,理論基礎部分我在后端專欄的Django系列博客已經寫過了,如果有些需要補充的知識點,我會在這個系列中,盡量詳細的記錄一下。


模板繼承


模版繼承類似于Python中繼承,在父類中可以先定義好一些變量和方法,然后在子類中實現。模版繼承也可以在父模版中先定義好一些子模版需要用到的代碼,然后子模版直接繼承就可以了。并且因為子模版肯定有自己的不同代碼,因此可以在父模版中定義一個block接口,然后子模版再去實現,父模版(base.html)示例代碼如下:

<!DOCTYPE html> <html lang="en"> <head><link rel="stylesheet" href="{% static 'style.css' %}" /><title>{% block title %}我的站點{% endblock %}</title> </head><body><div id="content">{% block content %}{% endblock %}</div> </body> </html>

我們將這個父模版,取名為base.html,在父模板中先定義好一個簡單的html骨架,然后定義好兩個block接口,讓子模版來根據具體需求來實現。子模板再通過extends標簽來繼承,子模板代碼示例如下:

{% extends "base.html" %}{% block title %}博客列表{% endblock %}{% block content %}{% for entry in blog_entries %}<h2>{{ entry.title }}</h2><p>{{ entry.body }}</p>{% endfor %} {% endblock %}

注意事項


在子模板中,extends標簽必須放在模版的第一行,子模板中的代碼必須放在block標簽中,否則將不會被渲染。

如果在子模板的某個block中,想要使用父模版的內容,那么可以使用{{block.super}},比如,在子模板中我想要使用父模版的title:

{% extends "base.html" %} {% block title %}{{ block.super }}博客列表 {% endblock %}

總結

以上是生活随笔為你收集整理的Django从理论到实战(part23)--模板继承的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。