在棉花糖中反序列化日期

时间:2021-01-27 15:22:48

标签: python date-formatting marshmallow

我有一个表(START_DATE、TEXT、DECIMAL、INTEGER)。 我从数据库中读取数据并尝试对数据进行反序列化。


class Response(Schema):
    class Meta:
        json_module = simplejson
    data = fields.List(fields.List(fields.Raw()))

回复:


"data": [
        [
            "Tue, 26 Jan 2021 00:00:00 GMT",
            "USD",
            78790.400000,
            79262
        ],
        [
            "Mon, 25 Jan 2021 00:00:00 GMT",
            "USD",
            68852.340000,
            77365
        ]

如何将日期格式更改为 '%Y-%m-%dT%H:%M:%S%z' 我做了以下更改,但日期格式没有更改。


class Response(Schema):
    class Meta:
        json_module = simplejson
        dateformat = '%Y-%m-%dT%H:%M:%S%z'
    data = fields.List(fields.List(fields.Raw()))

1 个答案:

答案 0 :(得分:0)

日期格式不会神奇地应用于任何看起来像数据的字符串。

您需要为每个值指定字段。

从您的示例中,您的架构可能看起来像

class Response(Schema):
    data = fields.Tuple((
        fields.DateTime(format='%Y-%m-%dT%H:%M:%S%z'),
        fields.String(),
        fields.Float(),
        fields.Integer(),
    ))