天天看點

Django-模闆的繼承,extends和block一看就懂

Django對模闆還提供了繼承機制。

所謂的繼承就是子模版可以沿用模闆的内容,并且還可以添加新的内容來豐富現有模闆。

對于Web開發來說,父模闆一般來說隻包含公共部分的内容,包含頁頭、導航欄、頁腳、ICP聲明等;

子模版一般是用來擴充或者豐富父模闆的,正如浏覽網站時,隻要時同一個網站,他的頁頭、導航欄、頁腳基本都是一樣的,不一樣的就是頁面的主題内容了。

父模闆

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>{% block title %}
    Django父模闆
    {% endblock %}</title>
</head>
<body>
<div>
    {% block content %}父模闆内容
    {% endblock %}
</div>
<div>
    {% block font %}頁腳{% endblock %}
</div>
</body>
</html>
           

子模版

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>子模版</title>
</head>
<body>
{% extends 'base.html' %} 
{% block title %}Django子模版{% endblock %}    
{% block content %}
<p>子模版内容</p>
{% endblock %}
</body>
</html>
           

從上面我們可以看見,

1、子模版通過{%extends%}标簽來繼承父模闆檔案

2、重寫{% block title%},重寫标題(title)

3、重載{% block content%},覆寫父模闆的内容

注意

子類模闆中可以添加新内容來豐富父模闆,前提時父模闆中需要定義這一部分的内容,即使内容為空也可以;若是沒有定義将不會被渲染。

結果展示

Django-模闆的繼承,extends和block一看就懂

希望這篇文章對你有用!

謝謝點贊評論!