用棉花糖 python 反序列化模型中的模型 json
deserialize json model in model with marshmallow python
我要反序列化 json 模型
class LogsSchema(ModelSchema):
class Meta:
model = Logs
sqla_session = Session
class UsersSchema(ModelSchema):
logs = fields.Nested(LogsSchema,exclude=('User', ))
class Meta:
model = Users
sqla_session = Session
json 模型请求
<QueryDict: {u'Username': [u'ramin world'], u'logs': [u'[UserLog=test]'], u'Date': [u'null'], u'Password': [u'1234'], u'Email': [u'ramin@blacat.gmail.com'], u'Name': [u'Farajpour']}>
加载json请求:
users_schema = UsersSchema()
json_dict = users_schema.load(usermodel,session=Session).data
结果:
{'Username': u'ramin world', 'Password': u'1234', 'Name': u'Farajpour', 'Email': u'ramin@blacat.gmail.com'}
您看到模型 u'logs': [u'[UserLog=test]']
不在结果中。
尝试在日志中添加 many=True
:
class UsersSchema(ModelSchema):
logs = fields.Nested(LogsSchema,exclude=('User', ), many=True)
...
我要反序列化 json 模型
class LogsSchema(ModelSchema):
class Meta:
model = Logs
sqla_session = Session
class UsersSchema(ModelSchema):
logs = fields.Nested(LogsSchema,exclude=('User', ))
class Meta:
model = Users
sqla_session = Session
json 模型请求
<QueryDict: {u'Username': [u'ramin world'], u'logs': [u'[UserLog=test]'], u'Date': [u'null'], u'Password': [u'1234'], u'Email': [u'ramin@blacat.gmail.com'], u'Name': [u'Farajpour']}>
加载json请求:
users_schema = UsersSchema()
json_dict = users_schema.load(usermodel,session=Session).data
结果:
{'Username': u'ramin world', 'Password': u'1234', 'Name': u'Farajpour', 'Email': u'ramin@blacat.gmail.com'}
您看到模型 u'logs': [u'[UserLog=test]']
不在结果中。
尝试在日志中添加 many=True
:
class UsersSchema(ModelSchema):
logs = fields.Nested(LogsSchema,exclude=('User', ), many=True)
...