将参数传递给Django中NavBar菜单的模板

问题描述

我正试图转头开始使用MVC。

我有一个基本HTML模板,其中包含一个NavBar代码:

{%包括“ navBar.html”%}

到目前为止,太好了。现在,我想向其发送有关“菜单”按钮的信息(到navBar.html模板)。我有一些简单的按钮,还有一些具有下拉按钮的行为。

我的按钮是对象,它们包含有关名称,href,位置等,类型(简单按钮或下拉按钮)的信息

因此,我以这种方式创建了一个嵌套列表:

outer_list = []

for a in UserModule.objects.filter(user=user_id,is_active=True):
    inner_list = []
    inner_list.append(UserModule(a))
    for b in Submodule.objects.filter(module=a.module,is_active=True):
        inner_list.append(Submodule(b))
    outer_list.append(inner_list)

return {'outer_list': outer_list}

因此,每个inner_list中的第一个元素都是可能的下拉按钮的头部,或者是一个简单按钮(取决于其type属性)。

最后的列表是这样的:

  • [0]简单按钮A
  • [1] Button-Drop-A => [sub-button-1,sub-button-2,sub-button-3]
  • [2]按钮-简单-B

以此类推。

当我将这个external_list传递给模板时,将按钮排列到菜单中所要做的就是疯狂的事情。如果我要在模板中编写很多代码,则使用MVC没有意义。

直到现在,我仍在模板上执行此操作,并且它缺少第一个元素标识,无法识别按钮类型等……

{% with isFirst=true %}
    {% for inner_list in outer_list %}
        {% for object in inner_list %}    
            {% if isFirst == true %}
                <li><a href=#>Drop_parent</a></li>
            {% else %}
                <li><a href=#>Drop-Child</a></li>
            {% endif %}
        {% endfor %}
        <li><a href=#>Static Button</a></li>
    {% endfor %}
{% endwith %}

这还没有完成,但是我相信我走错了路。

好的建议会很感激。 谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)