gpt4 book ai didi

python - Django奇怪的模板条件渲染

转载 作者:行者123 更新时间:2023-11-30 23:09:03 24 4
gpt4 key购买 nike

这是我的 django 模板文件:

{% if chart %}
{% block chart_content %}
// some for loop
{% endblock %}
{% else %}
{% block content %}

{% endblock %}
{% endif %}

这是我的“base.html”:

<div class = "container">
{% block content %}
{% endblock %}
</div>
{% block chart_content %}
{% endblock %}

当上述模板渲染时,“if”和“else”内容都会出现在页面中。换句话说,“if”和“else”都会被评估。谁能告诉我问题出在哪里?

最佳答案

来自Django template if statement always evaluates to true :

您不能像 if 那样将控制流标签包裹在 block 周围。您的问题是子模板的 block 数据定义仅仅因为它在那里而被使用。

您可以通过将 if 标记放在 block 数据内来修复它。如果您想在列表为空时继承父级的内容,请添加一个扩展为 {{ block.super }} 的 else case。

关于python - Django奇怪的模板条件渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31421606/

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