gpt4 book ai didi

python - 如何选择 Django 中不属于多对多关系的所有对象

转载 作者:太空宇宙 更新时间:2023-11-03 14:33:55 25 4
gpt4 key购买 nike

我在应用程序中有以下模型(已恢复):

class Account(models.Model):
name = models.CharField(max_length=64)
plans = models.ManyToManyField('Plan')
extra_services = models.ManyToManyField('Service')

class Plan(models.Model):
name = models.CharField(max_length=64)
services = models.ManyToManyField('Service')

class Service(models.Model):
name = models.CharField(max_length=64)

这里的计划只是服务的聚合,但一个帐户可能有单独的服务。在管理员(帐户)中我想显示一个选择框,其中包含与任何计划无关的所有服务(extra_services)。我可以使用什么查询集(在 limit_choices_to 中)来获取此信息?

PS:我不想遍历所有计划来获取所有链接的服务 ID,然后在过滤器中排除它们。

最佳答案

Service.objects.filter(plan_set__isnull=True) 应该可以。

您可以在 the documentation 中找到进一步的解释.

关于python - 如何选择 Django 中不属于多对多关系的所有对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5351392/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com