如何在Django模型中比较多对多字段?

时间:2018-10-04 19:52:50

标签: python django

给出以下模型示例,查询模型时如何比较两个M2M字段?

class PaidModel(models.Model):
    users = models.ManyToManyField(UserProfile)
    paid_users = models.ManyToManyField(UserProfile)

我正在尝试查找哪些'PaidModel'实例的'用户'与'paid_users'不匹配(即已分配但未付费)。我尝试了F对象,如下所示:

unpaid = PaidModel.objects.exclude(users=F('paid_users'))

这将返回一个查询集,但两个M2M字段与预期不匹配。我试图避免遍历和“手动”查找不匹配的实例。

任何帮助将不胜感激。

0 个答案:

没有答案