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 定义可重写的内容区域。通过这种方式,你可以有效地管理和重用模板结构。
相关推荐
vicky051721 分钟前
解决 ModuleNotFoundError: No module named ‘torch‘ 笔记
python
wuyk55526 分钟前
Python实战项目02:学生成绩管理系统(控制台|CSV导出|完整落地)
开发语言·python
qq5918406857 小时前
uiautomator2自动化安卓手机操作
python
80s7777 小时前
动态代理和静态代理的区别,动态代理怎么提高网络安全性
python
weixin_BYSJ19878 小时前
【计算机毕设】基于SpringBoot与Vue的文物保护档案管理系统08621
vue.js·spring boot·spring cloud·微服务·架构·django·课程设计
niucloud-admin9 小时前
JAVA V6 多商户商城 开发文档——job 计划任务开发
java·python·github
小叶肥辉9 小时前
LangChain链和LangGraph图的学习笔记【三】——分别用langchain_openai库和langchain_community库调用大模型
笔记·python·langchain
2401_873479409 小时前
IP属地为什么有时显示外省?用IP查询工具核查动态分配、运营商出口与GeoIP库
python·tcp/ip·ip
OKkankan12 小时前
LangChain 能力详解!:输出解析、RAG、向量数据库与 Retriever 检索器
数据结构·python·langchain·ai应用
山哥ol12 小时前
【Geany 环境配置与中文乱码解决参考】
python