У меня была точно такая же проблема.Как предложено @KoppeKTop для GitHub в этом посте , я наконец расширил свою модель (Pet
), используя EmbeddedDocument, например:
class OneImage(mongoengine.EmbeddedDocument):
element = ImageField()
class Pet(mongoengine.Document):
photos = EmbeddedDocumentListField(OneImage)
# ...more fields... #
Затем я могу добавить новое изображение, используя
i = OneImage()
i.element.put(form.photo.data.stream)
entry.photos.append(i)
entry.save()
Это не всегда лучший вариант, но лично я предпочитаю его, потому что я могу работать с моделями, как обычно, без необходимости работы с прокси.И я могу также сохранить другие метаданные фотографии в будущем, если мне нужно.