作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
让我尝试通过一个小示例应用程序来解释我想要实现的目标。这是一个购物 list 应用程序,可让您将预定义的 Items
作为 Groceries
添加到您的 ShoppingList
。明智的做法是每个 Item
都与一个 Store
相关。
当我将杂货添加到我的购物 list 后,我应该能够看到我的购物 list ,其中包含按商店组织(分组)的杂货。像这样的东西:
我如何创建 View 和模板来分组和显示此购物 list ?
例如:这是我显示所有商店的完整库存的方式:
#views.py
store_list = Store.objects.all()
#template.html
{% for store in store_list %}
<div>{{store}}
<ul>
{% for item in store.item_set.all %}
<li>{{item}}</li>
{% endfor %}
</ul>
</div>
{% endfor %}
这对我的购物 list 不起作用,但我真的在寻找同样强大/优雅的东西....
最佳答案
内置 regroup
怎么样?模板标签?
{% regroup item.objects.all by store as store_groups %}
<ul>
{% for store_group in store_groups %}
<li>{{ store_group.grouper }}
<ul>
{% for item in store_group.list %}
<li>{{ item }}</li>
{% endfor %}
</ul>
</li>
{% endfor %}
</ul>
关于python - 将相关项目组织成组的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28701267/
我是一名优秀的程序员,十分优秀!