如何序列化多个对象

时间:2019-11-12 13:34:09

标签: python serialization marshmallow

我想计算两个对象的某些字段之间的差异。

模式:

class CommonSchema(Schema):
    title = fields.Str()
    difference = fields.Function(...)

数据:

data = [{title: 'Test', 'date': '2019-11-10', number: 2}, {title: 'Test', date: '2019-11-12', number: 5}]

CommonSchema(many=True).dump(data)

序列化后,我想要这样的东西:

{
'title': 'Test',
'difference': 3    #number from 1st obj - number from 2nd obj (5-2)
}

那么如何使CommonSchema与两个对象一起工作?

我知道我可以在序列化之前更改对象:

data[0].difference = data[1].difference = data[1].number-data[0].number

,但是还有其他方法吗?

0 个答案:

没有答案