烧瓶棉花糖模式中的日期时间格式

Datetime format in flask marshmallow schema

我想对使用 flask marshmallow 中的模式从模型中检索到的数据应用自定义 DateTime 格式。

当前使用的架构如下:

class ScheduleListSchema(ma.Schema):
    class Meta:
        fields = ('id', 'start_time', 'end_time')

在此start_time格式为2018-12-05T03:00:00+00:00

所以我想为架构中的 start_time 值创建自定义格式。

您可以将 'start_time' 定义为 Function 字段:

from datetime import datetime

class ScheduleListSchema(ma.Schema):
    start_time = fields.Function(lambda obj: obj.start_time.isoformat())
    class Meta:
        fields = ('id', 'end_time')

您可以使用这样的代码:

start_time = fields.fields.DateTime(format='%Y-%m-%dT%H:%M:%S%z')

如果end_timestart_time格式一样,dateformat是另一种解决方案:

class ScheduleListSchema(ma.Schema):
    class Meta:
        fields = ('id', 'start_time', 'end_time')
        dateformat = '%Y-%m-%dT%H:%M:%S%z'