【问题标题】:Django dropdown dividerDjango 下拉分隔符
【发布时间】:2017-01-02 19:59:05
【问题描述】:

我有一个下拉菜单,它是通过循环一个对象列表生成的。我在对象 0、10 和 13 之后有一个分隔线。但是,某些用户无权访问所有对象,因此分隔线不会显示。有人可以建议一个好方法,在每个桶中的最后一个对象之后。 IE。桶 [0]、[1-10]、[11-13]。他们的桶是不同州的地区。

我不一定要求有人为我编写代码。我只是在问如何在概念上做到这一点,因为我对编码和 Django 还很陌生。非常感谢任何帮助!

<ul class="dropdown-menu">
    {% for i in area_list %}
        {% if not i.area_id == area.area_id %}
            {% if i.area_id == 0 or i.area_id == 10 or i.area_id == 13 %}
                <li><a href="{% url 'market_overview' area_id=i.area_id %}">{{ i.area_name }}</a></li>
                <li class="divider"></li>
            {% else %}
                <li><a href="{% url 'market_overview' area_id=i.area_id %}">{{ i.area_name }}</a></li>
            {% endif %}
        {% endif %}
    {% endfor %}
</ul>

【问题讨论】:

    标签: html django django-templates


    【解决方案1】:

    forloop.last。试试:

    context['zones'] = (area_list[:1], area_list[1:11], area_list[11:])
    

    和:

    <ul class="dropdown-menu">
        {% for areas in zones %}
            {% for i in areas %}
                {% if not i.area_id == area.area_id %}
                    <li><a href="{% url 'market_overview' area_id=i.area_id %}">{{ i.area_name }}</a></li>
                {% endif %}
            {% endfor %}
            {% if not forloop.last %}
                <li class="divider"></li>
            {% endif %}
        {% endfor %}
    </ul>
    

    您还可以准备区域并过滤视图中的空白区域。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-06
      • 2011-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多