📅  最后修改于: 2023-12-03 15:40:38.970000             🧑  作者: Mango
Django 模板是 Django 框架的核心组成部分之一。它允许我们将动态生成的 HTML 显示在浏览器上。
Django 模板使用基于语法的语法。基本语法如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{% block title %}{% endblock %}</title>
</head>
<body>
{% block content %}{% endblock %}
</body>
</html>
{% %}
符号用于表示模板标记,可以用于控制模板的逻辑流程。{{ }}
符号用于显示变量。{# #}
符号用于注释。在 Django 中,我们可以使用继承模板的方式来减少代码的重复性。我们可以创建一个基础模板,然后在其他模板中继承它并添加额外的内容。
{% extends 'base.html' %}
{% block title %}
Home Page
{% endblock %}
{% block content %}
<h1>Welcome to my homepage!</h1>
<p>This is the content of my homepage.</p>
{% endblock %}
在这个例子中,{% extends 'base.html' %}
表示我们要继承 base.html
模板。{% block title %}
和 {% block content %}
分别表示我们要在基础模板中替换的内容。
在 Django 中,我们可以使用 for
循环来遍历列表、字典等可迭代对象。
<ul>
{% for item in items %}
<li>{{ item }}</li>
{% endfor %}
</ul>
在这个例子中,{% for item in items %}
表示我们要遍历名为 items
的可迭代对象,{{ item }}
则表示要显示每个元素的值。
在 Django 中,我们可以使用 if
语句来控制模板的逻辑流程。
{% if message %}
<p>{{ message }}</p>
{% else %}
<p>No message to display.</p>
{% endif %}
在这个例子中,{% if message %}
表示如果 message
变量存在,则显示该变量的值;否则,显示 "No message to display."。
在 Django 中,我们可以使用过滤器来对变量进行处理,例如格式化时间、截取字符串等。
<p>{{ message|truncatewords:3 }}</p>
在这个例子中,truncatewords
过滤器被用于截取 message
变量的前三个单词。
以上是 Django 模板的基本语法和用法。掌握这些内容可以让我们更好地使用 Django 框架来构建网站。