Django之html内容继承

有一个需求,比如有一个html,里面有些内容在其它的子html内都要显示,就没必要重复在每一个html文件内写,可以写一个html,然后其它的来继承该html内的某些内容

<!doctype html>
<html lang="zh-CN">
<head>
    <title>django</title>   ##以下两行在所有页面显示内容都一样
    <h2>aaaa</h2>
</head>
{% block  "body_blk" %} #标识了这个标签的内容,被继承的可以修改内容而不是继承
<body>
<ul>
    <li style="display: inline-block">Home</li>
    <li style="display: inline-block">Sub</li>
    <li style="display: inline-block">Test</li>
</ul>
<form action="/add/" method="post">
    <p><input name="Username" type="text"></p>
    <p><input name="Password" type="text"></p>
    <p><input name="Age" type="text"></p>
    <p><input value="提交" type="submit"></p>
</form>
<table border="1">
    <thead>
        <tr>
            <th>用户名</th>
            <th>密码</th>
            <th>年龄</th>
        </tr>
    </thead>
    <tbody>
        {% for item in lion%}
        <tr>
            <td>{{ item.Username }}</td>
            <td>{{ item.Password }}</td>
            <td>{{ item.Age }}</td>
        </tr>
        {% endfor %}
    </tbody>
</table>
</body>
{% endblock %} ##结束block标签
</html>
View Code

子页面来继承或者修改要继承的页面

{% extends "monitor/index.html" %}   ##指定用来继承哪个html,默认是继承所有的
{% block  "body_blk" %}         ##指定修改此标签下的内容,而不是继承原来的内容,如果要修改多个内容,只要在继承的html内容中所在标签上添加block标签并且设置个名字,然后在被继承的里面添加此block标签名,写上内容,就不会继承原页面内的内容
<ul>
    {% for usa in bit %}
    {% if forloop.counter|divisibleby:2  %}
        <li style="color: red">uname:{{usa.name}},uage:{{usa.age}}</li>
    {% else %}
        <li style="color: blue;">uname:{{usa.name}},uage:{{usa.age}}</li>
    {% endif %}
    {% endfor %}
</ul>
{% endblock %}

 

posted on 2018-06-07 09:53  世马  阅读(252)  评论(0编辑  收藏  举报