Django模板中如何使用block定义和重写块

2023-04-09 00:00:00 定义 重写 如何使用

在Django模板中,可以使用block定义和重写块,例如:

定义一个块:

{% block content %}
  <h1>Welcome to our website!</h1>
{% endblock %}

在其他模板中继承并重写这个块:

{% extends "base_template.html" %}

{% block content %}
  <h1>About Us</h1>
  <p>{% trans "pidancode.com is a website for coding enthusiasts." %}</p>
{% endblock %}

其中,“base_template.html”是模板的基础模板,包含了定义好的块。在新的模板中继承这个基础模板,并使用{% block %}标签重写块的内容。

另外,我们可以在{% block %}标签中使用变量、语句、过滤器等,例如:

{% block page_title %}
  <title>{{ title|default:"PIDANCODE - The Coding Community" }}</title>
{% endblock %}

这里使用了过滤器default,当变量title为空时,显示默认值“PIDANCODE - The Coding Community”。

总结一下,使用block定义和重写块可以使模板的管理更加方便,基础模板的修改可以反映在所有继承模板中,而细节的修改可以在子模板中灵活实现。

相关文章