Django根据证书名称检索所有认证

时间:2017-07-25 17:32:20

标签: django django-models

我想检索所有拥有所有认证的Prospects 例如,如果认证是A,B& C,只有具有A,B和B的前景。应退回C.如果他们有超过ABC或低于ABC,他们应该被忽略。

在我的model.py

class Certification(models.Model):
    name = models.CharField(max_length=200, null=True, blank=True)

    def __str__(self):
        return "%s" % self.name


class Prospect(models.Model):
    certification = models.ManyToManyField(Certification, blank=True, related_name="certification_prospects")

如何编写Django查询以检索所有具有A,B和B严格认证的潜在客户? C 1

1 个答案:

答案 0 :(得分:-1)

from django.db.models import Count
certificates = Certification.objects.count()
prospect = Prospect.objects.annotate(total=Count('certification')).filter(total=certificates)

prospect var将返回具有所有证书的所有对象