模板的继承

extends


def index(request):
    return render(request, 'the_6/index.html')
from django.urls import path
from .views import the_6_hello, filter_custom, index

urlpatterns = [
    path('hello/', the_6_hello),
    path('filter_custom/', filter_custom),
    path('index/', index),
]
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>base页面</title>
    <style>
        .appbar{
            background: skyblue;
            height: 50px;
        }
        .main{
            {#弹性布局#}
            display: flex;
        }
        .content{
            width: 80%;
            height: 1000px;
            background: yellowgreen;
        }
        .sidebar{
            width: 20%;
            height: 1000px;
            background: darkseagreen;
        }
    </style>
</head>
<body>
    <div class='appbar'></div>
    <div class="main">
        <div class="content"></div>
        <div class="sidebar"></div>
    </div>
</body>
</html>
{# extends 继承 —— 引入 #}
{% extends 'base.html' %}

block —— 挖坑、填坑

挖坑,填坑,把需要修改的地方挖出来,再填上想要的

    <div class='appbar'>
        {% block appbar %}
        我是base.html的页眉
        {% endblock %}
    </div>

填 

{# extends 继承 —— 引入 #}
{% extends 'base.html' %}

{% block appbar %}
我是index.html的页眉
{% endblock %}

block.super —— 保留原有的

    <div class="main">
        {% block main %}
        <div class="content">
            我是base.html的主要内容
        </div>
        {% endblock %}
        <div class="sidebar">
            我是base.html的侧边栏
        </div>
    </div>

 

{% block main %}
    {{ block.super }} <br>
    我是index.html的主要内容
{% endblock %}

include 

<h3> 我是include.html的内容 </h3>

include 的引入 ,只能写在某个页面里

{% block main %}
    {{ block.super }} <br>
    我是index.html的主要内容
    {% include 'the_6/include.html' %}
{% endblock %}

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值