Django orm AND условие для одного и того же ключа с несколькими вариантами

у меня есть модель WebDocuments с несколькими объектами различных типов документов, и я хочу применить условие

    document_type= ['PAN', 'DL']
    doc_obj = WebDocuments.objects.filter(is_active=True)
    q_objects = Q()
    if document_type:
        q_objects &= [Q(type=doc) for doc in document_type]
    check_obj = doc_obj.filter(q_objects)
    if check_obj:
        return True
    return False

Я хочу возвращать True или False, если оба типа документов существуют или нет. У меня есть оба типа документов в моей базе данных, но он все равно возвращает пустоту, потому что он фильтрует оба типа при сохранении объекта. Есть ли способ сделать это с помощью оператора and или мне нужно зациклить набор запросов со всеми типами документов

вот моя модель

class WebDocuments(TimeStampedModel):
   uuid = models.UUIDField(default=uuid.uuid4, null=True, blank=True)
   lead = models.ForeignKey(Lead, related_name='web_lead_document')
   type = models.CharField(choices=DocumentTypeChoices.choices, max_length=100)

Обратитесь к этим - https://www.geeksforgeeks.org/multiplechoicefield-django-forms/ https://www.teckiy.com/support/questions/how-to-setup-multi-choice-field-in-django-along-with-django-filter-3033665043/

или создать новую модель с именем Type и добавить ее в модель WebDocuments с типом поля many to many, а затем запросить ее.

Вернуться на верх