gpt4 book ai didi

Django 模板 - 我可以设置要在父模板中使用的变量吗?

转载 作者:行者123 更新时间:2023-12-03 20:28:19 24 4
gpt4 key购买 nike

我有一个包含通用导航菜单的父模板。我希望能够添加 class="selected"到相应的菜单选项。

我希望能够在子模板中设置一个变量,例如:

{% set menu = "products" %}

并做:
{%ifequal menu "products" %}class="selected"{% endifequal %}

我不想在 View 中设置一个值,因为我必须将它添加到我所有的 View 方法中,而且我不想在每个子页面中重复整个菜单 html,因为如果菜单更改,我只想更改HTML 在一处。

我是从“非 Django”的心态来解决这个问题的吗?

任何帮助将非常感激。谢谢。

最佳答案

为了记录,这被认为是一种不好的做法......但你可以这样做

{% with "products" as menu %}
{{ menu }}
{% endwith %}

由于这实际上并不能解决您的具体问题,因此这里有一个可能的应用程序......
<div class='menu'>
{% block menuitems %}
<a class='{% ifequal menu 'products' %}selected{% endifequal %}' href='/whereever/'>products</a>
...
{% endblock %}
</div>

并在子模板中
{% block menuitems %}
{% with 'products' as menu %}
{{ block.super }}
{% endwith %}
{% endblock %}

关于Django 模板 - 我可以设置要在父模板中使用的变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2228898/

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