Я использую MongoDB с MongoEngine и пытаюсь сериализовать / десериализовать с Marshmallow_MongoEngine.
Мой код выглядит следующим образом:
import marshmallow_mongoengine as ma
from models.profile import Profile
class ProfileSchema(ma.ModelSchema):
class Meta:
model = Profile
Ошибка, которую я получаю: ModuleNotFoundError: No module named 'marshmallow.compat'
И частичный трекбек:
File ".../lib/python3.7/site-packages/marshmallow_mongoengine/__init__.py", line 11, in <module>
from marshmallow_mongoengine.schema import (
File ".../lib/python3.7/site-packages/marshmallow_mongoengine/schema.py", line 6, in <module>
from marshmallow.compat import with_metaclass
Кажется, что ошибка является результатом вызова with_metaclass, который, как я понимаю, был изначально в Marshmallow для обратной совместимости с Python 2 .x и больше не используется. Есть ли этому решение? Или другой способ сериализации / десериализации данных в и из БД?
PS Я пытался использовать json_util.dumps, но он возвращает мои значения в следующем формате: [\ "_ id \", \ "name \" ] а не приятный вывод, который я привык получать от чего-то вроде зефира- sql