【发布时间】:2011-12-15 04:54:59
【问题描述】:
我有两个 Django 模型,它们通过多对多关系相互关联。
我需要列出两个表的叉积。
为了简单起见,假设这两个模型是 Pizza 和 Topping。
我希望查询返回如下内容:
pizza_name topping
---------------------
all dressed cheese
all dressed mushrooms
all dressed onions
all dressed peperoni
all dressed pepper
reddit cheese
reddit peperoni
reddit bacon
reddit baconbits
数据量会非常大,我绝对需要使用计数和切片,所以我不能简单地迭代模型并在进行过程中处理数据。
知道我应该如何进行吗?
【问题讨论】:
-
通过cross join你的意思是你想返回返回
p*t行,其中p是比萨饼的数量,t是浇头的数量?或者您想返回pizza_topping中间表中的每个 (pizza,topping) 对?您发布的示例结果表明后者。 -
阿拉斯代尔所说的。换句话说,您发布的示例不是交叉产品。
标签: django orm join many-to-many django-orm