Django 模板继承的语法主要涉及两个关键标签:{% extends %}
和 {% block %}
。
语法详解
-
{% extends %}
:- 用于指定当前模板继承自哪个父模板。
- 语法:
{% extends "父模板的路径" %}
html{% extends "base.html" %}
-
{% 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
定义可重写的内容区域。通过这种方式,你可以有效地管理和重用模板结构。