【发布时间】:2015-07-31 06:14:56
【问题描述】:
经过大量时间和努力,我有了一个菜单标题,用户可以在其中选择要显示在菜单标题中的详细信息。
如果用户选择显示超过 20 个菜单项,我已将菜单设置为 3 列(始终显示 3 个菜单项,因此我在循环 17 上放置了分列符强>)。
如果用户选择的菜单项少于 17 个,则菜单将显示为 2 列,如下所示:
如果用户选择了超过 17 个菜单项,则菜单将显示为 3 列。
当我尝试在循环 17 处放置分栏符时,正好有 17 个菜单项,显示第 3 列,但我只想要 2 列。只有在超过17个菜单选项选择的情况下才能显示3列。
。以下是我当前的代码:
这就是我想要达到的目标:
我已经尽力解决这个问题,但无法解决。我在某处犯了一个错误,但我看不到它(我很尴尬,我必须发布这个问题才能解决我的问题)。
我不确定我的 HTML 代码是否放置不正确,或者我的 django 循环是否校准不正确。
这是我的代码:
<div class="mega-menu-content">
<div class="container">
<div class="row equal-height">
<div class="{% if selected_menu_entries|replace_comma_with_linespace|wordcount > 18 %}col-md-4{% else %}col-md-6{% endif %} equal-height-in">
<ul class="list-unstyled equal-height-list">
<!-- a Details Pages -->
{# 1st Menu Details are always available. #}
<li>
<a href="{% url 'a_details' %}">
{% trans "1st Menu" %}
<span class="badge rounded-2x badge-blue">
{{ a_details_count }}
</span>
</a>
</li>
<!-- End a Details Pages -->
<!-- b Details Pages -->
{# 2nd Menu Details are always available. #}
<li>
<a href="{% url 'b_details' %}">
{% trans "2nd Menu" %}
<span class="badge rounded-2x badge-blue">
{{ b_details_count }}
</span>
</a>
</li>
<!-- End b Details Pages -->
<!-- c Details Pages -->
{# 3rd menu Details are always available. #}
<li>
<a href="{% url 'c_details' %}">
{% trans "3rd Menu" %}
<span class="badge rounded-2x badge-blue">
{{ c_details_count }}
</span>
</a>
</li>
<!-- End c Details Pages -->
<!-- remaining selected Menu Details Pages -->
{# Only display the Menu Details that the user has selected to appear. #}
{% for entry, count, view_link in test_menu %}
<li>
<a href="{{ view_link }}">
{{ entry.label }}
<span class="badge rounded-2x badge-blue">
{{ count }}
</span>
</a>
</li>
{% ifequal forloop.counter 7 %}
</ul>
</div>
<div class="{% if selected_menu_entries|replace_comma_with_linespace|wordcount > 18 %}col-md-4{% else %}col-md-6{% endif %} equal-height-in">
<ul class="list-unstyled equal-height-list">
{% endifequal %}
{% ifequal forloop.counter 17 %}
</ul>
</div>
<div class="{% if selected_menu_entries|replace_comma_with_linespace|wordcount > 18 %}col-md-4{% else %}col-md-6{% endif %} equal-height-in">
<ul class="list-unstyled equal-height-list">
{% endifequal %}
{% if forloop.last %}
</ul>
</div>
</div>
</div>
</div>
希望有人能指出我的错误。
【问题讨论】:
标签: html django for-loop django-forms