【发布时间】:2018-06-09 02:32:17
【问题描述】:
我在基本模板中有一个公共变量或块,我想在子模板中扩展它,我该如何实现?我有以下代码。
base.html
<html>
<head>
<title>
{% block page_title %} {% endblock %}
</title>
<meta property="og:title" content="{% block page_title %} {% endblock %}" />
...
</head>
<body>
<h1> {% block page_title %} {% endblock %} </h1>
...
my_page.html
{% extends 'base.html' %}
{% block page_title %}
Page title goes here
{% endblock %}
当我运行此代码时,我收到以下错误 名为“page_title”的“block”标签多次出现
【问题讨论】:
-
AFAIK,块必须是唯一的。你的区块
page_title出现了两次。 -
我该如何解决?
-
在每个
view中,设置一个上下文变量,其中包含页面标题的值。 -
正如@SachinKukreja 所说,在所有这些地方使用相同的上下文变量并确保您的视图正确提供它。您可以在模板中提供一个默认值,以免将其留空。
标签: python django-templates jinja2