Can';带有Django的t访问标签包括

Can';带有Django的t访问标签包括,django,Django,我有以下设置 base.html <html> //etc <body> {% include "partials/footer.html" %} </body> </html> 但是,页脚标题不会更改。我做错了什么?这是一个记录在案的限制。请参阅文档: include标记应被视为“呈现此子模板并包含HTML”的实现,而不是“解析此子模板并包含其内容,就好像它是父模板的一部分”。这意味着包含的模板之间没有共享状态–每个包含都是一个完全独

我有以下设置

base.html

<html>
 //etc
<body>
    {% include "partials/footer.html" %}
</body>
</html>

但是,页脚标题不会更改。我做错了什么?

这是一个记录在案的限制。请参阅文档:

include标记应被视为“呈现此子模板并包含HTML”的实现,而不是“解析此子模板并包含其内容,就好像它是父模板的一部分”。这意味着包含的模板之间没有共享状态–每个包含都是一个完全独立的渲染过程。 在包含块之前先对其进行评估。这意味着,包含来自另一个模板的块的模板将包含已计算和渲染的块,而不是可以被(例如)扩展模板覆盖的块


最简单的解决方案是不包括包含要覆盖的块的模板。只需将页脚标记放在base.html

中,这是一个有文档记录的限制。请参阅文档:

include标记应被视为“呈现此子模板并包含HTML”的实现,而不是“解析此子模板并包含其内容,就好像它是父模板的一部分”。这意味着包含的模板之间没有共享状态–每个包含都是一个完全独立的渲染过程。 在包含块之前先对其进行评估。这意味着,包含来自另一个模板的块的模板将包含已计算和渲染的块,而不是可以被(例如)扩展模板覆盖的块

最简单的解决方案是不包括包含要覆盖的块的模板。只需将页脚标记放在base.html中

<div class="footer">
    <h2>{% block footer_headline %}Default footer headline{% endblock %}</h2>
</div>
{% extends 'base.html' %}
{% block footer_headline %}NEW Footer Headline {% endblock %}