Mongoengine - Возвращение ObjectId недавно вставленного внедренного документа в массив - PullRequest
0 голосов
/ 05 марта 2019

Я работаю в mongoengine, и у меня есть такая схема:

class Comments(EmbeddedDocument):
    _id = ObjectIdField(required=True, default=lambda: ObjectId())
    author = ReferenceField(User, required=True)
    date = DateTimeField(required=True)
    body = StringField()
class Project(Document):
    name = StringField(),
    date = DateTimeField(),
    location = StringField(),
    comments = ListField(EmbeddedDocumentField(Comments))

Я хочу добавить список comments в документе проектов.Поэтому, когда я нажимаю новый comment, я также хочу получить обратно _id недавно добавленного комментария.

Процесс мышления: Я получаю id проекта, который я хочу отправить, и затем добавляю его к определенному массиву в документе проектов.

Мой запрос на данный момент выглядит следующим образом:

comment = Project.objects(id=id).modify(push__comments=request.json)

Вопрос: Как получить обратно идентификатор или объект недавно выдвинутого EmbeddedДокумент в массив?

...