【发布时间】:2015-06-18 13:34:56
【问题描述】:
我在这里有两个相关的模型; Item 和 Category,它们看起来如下:
class Category(models.Model):
name = models.CharField(max_length=200)
items = models.ManyToManyField(Item)
class Item(models.Model):
name = models.CharField(max_length=200)
我想创建一个页面,列出所有Categories 及其各自的Items。我意识到我可以遍历Category.objects.all() 并为每个实例检索.items.all(),但这似乎非常低效。有没有办法在恒定数量的查询中做到这一点,而不是随着类别数量的增加?我设想结果是某种Categories 的二维数据结构,其中包含Items,然后我可以在嵌套循环中在我的模板中进行迭代。
我见过像 this one 这样的问题处理类似的问题,但这些问题通常围绕着他们希望查找的一些 Item 实例(实际上,可以在恒定数量的查询中完成) .
【问题讨论】:
标签: python django many-to-many