Django - 如果每个相关模型都满足条件,则从查询集中排除
Django - exclude from queryset if every related model meets a condition
给定两个模型:
class Pizza(models.Model):
...
class Topping(models.Model):
on_pizza = models.ForeignKey(Pizza, on_delete=models.CASCADE, related_name='toppings')
name = models.CharField(max_length=50)
spicy = models.BooleanField(default=False)
如何排除所有 "spicy" 设置为 "False" 的披萨?
所以,我想要一个比萨查询集,其中每个比萨都至少有一个辣味配料。
谢谢!
可能
Pizza.objects.filter(toppings__spicy=True).distinct()
?
Pizza.objects.filter(toppings__spicy=True).distinct()
给定两个模型:
class Pizza(models.Model):
...
class Topping(models.Model):
on_pizza = models.ForeignKey(Pizza, on_delete=models.CASCADE, related_name='toppings')
name = models.CharField(max_length=50)
spicy = models.BooleanField(default=False)
如何排除所有 "spicy" 设置为 "False" 的披萨?
所以,我想要一个比萨查询集,其中每个比萨都至少有一个辣味配料。
谢谢!
可能
Pizza.objects.filter(toppings__spicy=True).distinct()
?
Pizza.objects.filter(toppings__spicy=True).distinct()