Я пытаюсь разыменовать ссылочное поле на моем флэшке и возвращать полный объект с определенным полем разыменованного поля.Dereference a ReferenceField в Mongoengine
поле Я пытаюсь разыменованием определяется следующим образом:
vouches_received = db.ListField(db.ReferenceField('Vouch'))
так, как я пытаюсь разыменовать это так:
unverified_vouches = []
for vouch in usr.vouches_received:
unverified_vouches.append(vouch.to_mongo())
usr.vouches_received = unverified_vouches
Однако, когда я потом делать:
usr.to_json()
На объекте я получаю сообщение ValidationError следующим образом:
ValidationError: u'{...}' is not a valid ObjectId, it must be a
12-byte input of type 'str' or a 24-character hex string
3 точки (...) в основном документа разыменованы, в основном это строки, поле даты и некоторые другие ссылочные поля, которые я не хочу разыменовывать.
Я знаю, что это допустимая ошибка, поскольку она ожидает ObjectID для ссылочного поля, но затем возникает вопрос, как мне удастся разыменовать это поле и вернуть документ.
Благодаря
Что вы собираетесь делать с объектом usr после того, как вы его перевели в json? –
верните его клиенту – Yarneo