如何在django rest框架中格式化时间';什么是序列化程序?

如何在django rest框架中格式化时间';什么是序列化程序?,django,serialization,django-rest-framework,Django,Serialization,Django Rest Framework,这是我的序列化程序代码: 序列化程序.py class StartListSerializer(serializers.Serializer): id = serializer.CharField() time = serializers.DateField(fromat=None, input_formats=None) 它会给我这个: “时间”:“2014-03-14T22:44:16.923000” 输入时间格式为datetime.datetime(2014,3,14,

这是我的序列化程序代码:
序列化程序.py

class StartListSerializer(serializers.Serializer):
    id = serializer.CharField()
    time = serializers.DateField(fromat=None, input_formats=None) 
它会给我这个:
“时间”:“2014-03-14T22:44:16.923000”

输入时间格式为
datetime.datetime(2014,3,14,22,44,37280000)

但是我想要这样的时间
2014-03-14 22:44:37


如何更改序列化程序以获得此时间?

通常的Python日期时间格式将起作用:

# for DateField
date = serializers.DateField(format="%Y-%m-%d")

# for DateTimeField
time = serializers.DateTimeField(format="%Y-%m-%d %H:%M:%S")

在测试接受的答案后,我得到以下错误:

AssertionError:应为
日期
,但得到了
日期时间
。拒绝强制,因为这可能意味着丢失时区信息。使用自定义只读字段并显式处理时区问题

使用序列化器字段作为
datetime
解决了这个问题

class StartListSerializer(serializers.Serializer):

    # ...
    time = serializers.DateTimeField(format="%Y-%m-%d %H:%M:%S")

你能帮忙吗?这个答案给出了DateTime字段的错误。选中下面的@FlipYM answer。在最新版本中,格式可能已更改。我有
序列化程序.DateField(format='YYYY-MM-DD')