Получить все встроенные документы во всех документах в коллекции, используя MongoEngine

Я пытался найти это в Интернете, но, похоже, ничего не нашел (извините, если это где-то здесь).

Я использую Mongoengine с Django и имею следующую модель:

class Event(EmbeddedDocument):
    tagged_event = StringField(max_length=255)
    example_event = StringField(max_length=255)
    severity = StringField(max_length=4)
    created_by = StringField(max_length=255)
    created_on = DateTimeField()
    modified_by = StringField(max_length=255)
    modified_on = DateTimeField()

class Definition(Document):
    title = StringField(max_length=255)
    description = StringField(max_length=255)
    resolution = StringField(max_length=255)
    events = ListField(EmbeddedDocumentField(Event))
    created_by = StringField(max_length=255)
    created_on = DateTimeField()
    modified_by = StringField(max_length=255)

Что я хочу сделать, так это вернуть каждое "Событие" в коллекции определений, но не "Определение" в представлении.

Есть идеи?

Большое спасибо!

****ОБНОВИТЬ****

Я нашел работу вокруг:

Я создал событие как отдельное приложение в Django и установил для ReferenceField импортированное определение из другого приложения.

В EventView я установил поле ссылки, используя идентификатор определения.

class Event(Document):
    tagged_event = StringField(max_length=255)
    example_event = StringField(max_length=255)
    severity = StringField(max_length=4)
    definition = ReferenceField(Definition)
    created_by = StringField(max_length=255)
    created_on = DateTimeField()
    modified_by = StringField(max_length=255)
    modified_on = DateTimeField()

views.py

def post(self, request):
    serializer = EventSerializer(data=request.data)
    if not serializer.is_valid():
        return Response(serializer.data, status=status.HTTP_400_BAD_REQUEST)
    else:
        data = serializer.data
        date = datetime.datetime.now()
        Event.objects.create(tagged_event=data['tagged_event'], example_event=data['example_event'], severity=data['severity'], definition=data['definition'], created_by=data['created_by'], created_on=date, modified_by=data['modified_by'], modified_on=date)
        return Response(serializer.data, status=status.HTTP_201_CREATED)

Хотя я все еще хотел бы знать, возможно ли отфильтровать все вложенные документы во всех документах.

0 ответов