gpt4 book ai didi

Django 嵌套 'with' 和 'block' 标签

转载 作者:行者123 更新时间:2023-12-03 11:42:49 26 4
gpt4 key购买 nike

我有 base.html 像这样的模板:

<p>{% block a %}{% endblock %}</p>
<p>{% block b %}{% endblock %}</p>

index.html 模板:
{% extends "base.html" %}

{% with description="foo" %}
{% block a %}{{ description }}{% endblock %}
{% block b %}{{ description }}{% endblock %}
{% endwith %}

但结果变成了:
<p></p>
<p></p>

代替:
<p>foo</p>
<p>foo</p>

有什么解决方法吗?

最佳答案

不是按照您希望的方式,在继承的模板中,django 在 blocks 中查找代码。这意味着它不会识别您 with 的存在在此之外阻止。所以你唯一的选择是在每个块内包含 with

{% block a %}    
{% with description="foo" %}
{{ description }}
{% endwith %}
{% endblock %}

尽管对于单个调用,不值得使用 with ,唯一的其他选择是通过 description通过上下文

关于Django 嵌套 'with' 和 'block' 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36199198/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com