Django 模板继承

Django 模板继承的语法主要涉及两个关键标签:{% extends %}{% block %}

语法详解

  1. {% extends %}

    • 用于指定当前模板继承自哪个父模板。
    • 语法:{% extends "父模板的路径" %}
    html 复制代码
    {% extends "base.html" %}
  2. {% block %}

    • 定义可以被子模板重写的区域。
    • 语法:{% block block_name %}内容{% endblock %}
    html 复制代码
    {% block content %}
    这里是内容
    {% endblock %}

示例

父模板
html 复制代码
<!DOCTYPE html>
<html>
<head>
    <title>{% block title %}默认标题{% endblock %}</title>
</head>
<body>
    <header>
        <h1>网站标题</h1>
    </header>
    
    <main>
        {% block content %}
        默认内容
        {% endblock %}
    </main>
    
    <footer>
        <p>版权信息</p>
    </footer>
</body>
</html>
子模板
html 复制代码
{% extends "base.html" %}

{% block title %}子页面标题{% endblock %}

{% block content %}
    <h2>这是子页面的内容</h2>
{% endblock %}

总结

  • 使用 extends 指定父模板。
  • 使用 block 定义可重写的内容区域。通过这种方式,你可以有效地管理和重用模板结构。
相关推荐
2401_8654396315 小时前
HTML函数在低温环境下启动慢吗_温度对硬件启动影响【方法】
jvm·数据库·python
m0_377618231 天前
Golang怎么连接MySQL数据库_Golang MySQL连接教程【总结】
jvm·数据库·python
LN花开富贵1 天前
【ROS】鱼香ROS2学习笔记一
linux·笔记·python·学习·嵌入式·ros·agv
weixin_586061461 天前
C#怎么通过反射获取类属性_C#如何动态读取元数据【进阶】
jvm·数据库·python
Jurio.1 天前
本机开发 + 多机执行的极简远端运行工具
linux·git·python·github·远程工作
skywalk81631 天前
pytest测试的时候这是什么意思?Migrating <class ‘kotti.resources.File‘>
前端·python
overmind1 天前
oeasy Python 121[专业选修]列表_多维列表运算_列表相加_列表相乘
java·windows·python
m0_678485451 天前
CSS如何控制表格单元格边框合并_通过border-collapse实现
jvm·数据库·python
m0_748839491 天前
如何用组合继承模式实现父类方法复用与子类属性独立
jvm·数据库·python
qq_334563551 天前
PHP源码是否依赖特定芯片组_Intel与AMD平台差异【操作】
jvm·数据库·python