3

我对这样构建的模型有疑问:

class Topping(models.Model):
    name = models.CharField(max_length=30)

class Pizza(models.Model):
    cook = models.ForeignKey(Cook)
    name = models.CharField(max_length=50)
    toppings = models.ManyToManyField(Topping)

我正在尝试选择提供的厨师在他的比萨饼上使用的所有配料。

在 SQL 上我可以使用select * from Toppings t where t.id IN(select topping_id from Pizzas where cook_id = ?)或其他方式(肯定更有效:P)。问题是我必须使用 django 模型,因为底层的依赖关系,比如分页。

因为它是许多应用程序使用的数据库,所以如果可以在不更改模型的情况下完成它会很棒......

4

1 回答 1

4
Topping.objects.filter(pizza__cook=mycook)
于 2012-04-19T13:50:09.990 回答