Skip to content

模板层 Template

模板层的作用,是把后端数据渲染成用户能看到的页面。

为什么需要模板

如果后端只返回纯文本,页面会很单调。
模板的意义就是:

  • 把 HTML 页面和 Python 数据结合起来
  • 让页面根据后端数据动态变化

最基础示例

视图:

python
from django.shortcuts import render

def home(request):
    return render(request, "home.html", {"name": "小明"})

模板 home.html

html
<h1>欢迎你,{{ name }}</h1>

最终页面显示:

text
欢迎你,小明

模板导入

模板可以相互复用。
比如页头、页脚、侧边栏通常不会每个页面都重写。

上下文变量

后端传给模板的数据,通常就叫上下文。

模板表达式

最常见的是:

html
{{ name }}

表示输出变量。

模板语句

条件判断

html
{% if score >= 60 %}
  <p>及格</p>
{% else %}
  <p>未及格</p>
{% endif %}

循环

html
{% for item in students %}
  <p>{{ item }}</p>
{% endfor %}

模板复用

页面一多之后,模板复用会变得非常重要。
否则你会重复写大量相同 HTML。

过滤器

过滤器可以在模板里对数据做简单处理,例如:

html
{{ name|upper }}

标签

模板标签通常负责更复杂一点的逻辑控制。

Built with VitePress.