如何在Django中进行嵌套重组?

时间:2011-01-12 23:49:02

标签: django django-templates

我在这个系统中遇到以下情况: 每类产品都有许多子类别,每个子类别下都有许多产品。 我正在尝试制作一个产品searh,它会返回一个列表,在我的模板中,我会显示结果的概述,如下所示:

Cellphones
    Dumbphones (2 results)
    Smartphones (3 results)
Monitors
    CRT (1 result)
    LCD (3 results)

我是我的模板我只有产品清单。我尝试了很多嵌套重组的组合,没有成功。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您可以尝试这样的事情:

<div>    
...
{% regroup results|dictsort:"subcategory.category" by subcategory.category as categories %}
<ul>
    {% for category in categories %}
    <li>{{ category.grouper }}
        {% regroup category.list|dictsort:"subcategory" by subcategory as subcategories %}
        <ul>
            {% for subcategory in subcategories %}
                <li>{{ subcategory.grouper }}
                    <!--The same way you can render a subcategory.list which is the prosucts list-->
                </li>
            {% endfor %}
        </ul>
    </li>
    {% endfor %}
</ul>
acceptance_report.company as companies %}
...
</div>