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

如何在Django中进行嵌套重组?,django,django-templates,Django,Django Templates,我在这个系统中遇到了以下情况: 每个产品类别都有许多子类别,每个子类别下都有许多产品。 我试图制作一个产品searh,它返回一个列表,在我的模板中,我展示了结果的概述,如下所示: Cellphones Dumbphones (2 results) Smartphones (3 results) Monitors CRT (1 result) LCD (3 results) <div> ... {% regroup results|dictso

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

Cellphones
    Dumbphones (2 results)
    Smartphones (3 results)
Monitors
    CRT (1 result)
    LCD (3 results)
<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>

我是我的模板,我只有产品列表。我尝试过许多嵌套重组的组合,但没有成功。有什么想法吗?

您可以尝试以下方法:

Cellphones
    Dumbphones (2 results)
    Smartphones (3 results)
Monitors
    CRT (1 result)
    LCD (3 results)
<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>

...
{%重新组合结果| dictsort:“subcategory.category”按subcategory.category作为categories%}
    {categories%%中的类别为%s}
  • {{category.grouper}} {%RegroupCategory.list | dictsort:“subcategory”按子类别作为子类别%}
      {%用于子类别中的子类别%}
    • {{subcategory.grouper}}
    • {%endfor%}
  • {%endfor%}
验收报告\公司作为公司%} ...
您是否使用django mptt之类的工具?不,我刚开始学习django。您有类别模型和子类别模型,还是只有类别树?我有类别和子类别模型。我真的不认为这是最好的方法,因为两者都是非常简单的模型,如果有更好的方法,让我知道。