DjangoCMS - 添加多个菜单

问题描述 投票:0回答:1

我正在尝试创建一个 DjangoCMS 网页,但是当我将显示菜单添加到我的页面时,CMS 中添加的新页面在 show_menu 标记的每个实例上都是重复的,同一 html 代码上可能有多个 show_menu 标记具有与 CMS 相同的功能。我可以添加其他 show_menus 但使用静态 html 代码。我的计划是在同一页面上添加多个 show_menus。

{% load static cms_tags menu_tags sekizai_tags %}
<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="UTF-8">
   </head>
<body>
    {% cms_toolbar %}
  <div class="sidebar close">
    <div class="logo-details">
      <i class='bx bxl-c-plus-plus'></i>
      <span class="logo_name"> LOGO </span>
    </div>
    {% block content1 %}{% endblock content1 %}
    <ul class="nav-links">
      <li>
        <a href="#">
          <i class='fa-solid fa-gauge' ></i>
          <span class="link_name">Dashboard</span>
        </a>
        <ul class="sub-menu blank">
          <li><a class="link_name" href="#">Dashboard</a></li>
        </ul>
      </li>
      <li>
        <div class="iocn-link">
          <a href="#">
            <i class='bx bx-book-alt' ></i>
            <span class="link_name">Applications</span>
          </a>
          <i class='fa-solid fa-chevron-down arrow' ></i>
        </div>
        <ul class="sub-menu">
          <li><a class="link_name" href="#">Applications</a></li>
        * >>>>>>>>>> {% show_menu 0 100 100 100 %}*
        </ul>
      </li>
      <li>
        <div class="iocn-link">
          <a href="#">
            <i class='bx bx-book-alt' ></i>
            <span class="link_name">Servers</span>
          </a>
          <i class='fa-solid fa-chevron-down arrow' ></i>
        </div>
        <ul class="sub-menu">
          <li><a class="link_name" href="#">Servers</a></li>
         * >>>>>>>>>> {% show_menu 1 100 100 100 %}*
        </ul>
      </li>
    </div>
  </li>
</ul>
  </div>
</body>
</html>
django-rest-framework django-views django-forms django-templates django-cms
1个回答
0
投票

是的,您可以有多个

show_menu
标签,但如果您为它们提供类似的参数,您可能会在每个标签中获得相同的页面。

您向模板标签提供了 4 个参数,因此这些是;

  • start_level
  • end_level
  • extra_inactive
  • extra_active

它们的行为方式完全取决于您构建页面树的方式。如果您有一个主页作为根节点(即级别 0)并且不想显示根节点,请将

start_level
设置为 1。

您将在第一个菜单中首先看到的是 0 级。此菜单不断遍历树直至第 100 层。

然后,您的第二个菜单从下一个级别 1 开始。并且它还会继续遍历树,到达 100 级。

根据页面树的深度,您可以从两个菜单开始执行如下操作,以便您了解这一点;

{% show_menu 0 2 %}

{% show_menu 2 6 %}

您可能想要删除第三个和第四个参数,直到开始看到您想要的结果,但为了清楚起见,取自 docs;

第三个参数,

extra_inactive
(默认=0),指定有多少个 如果节点不是直接节点,则应显示导航级别 当前活动节点的祖先或后代。

第四个参数,

extra_active
(默认=100),指定有多少个 当前活动节点的后代级别应该是 显示。

© www.soinside.com 2019 - 2024. All rights reserved.