为什么 Django Rest Framework 不解析 JSON.net 生成的 iso-8061?



我正在使用Django Rest框架来使用来自。net服务器的API帖子。

JSON.net生成的iso-8061日期时间如下:

"doTime": "2016-10-25T20:26:46.1726639Z"

我的序列化器或多或少是:

class DoStuffSerializer(serializers.Serializer):
    timeformats = ["iso-8061", "rfc-3339", "%Y-%m-%dT%H:%M:%S.%fZ", "%Y-%m-%dT%H:%M:%SZ", "%Y-%m-%dT%H:%M:%S.%f", "%Y-%m-%dT%H:%M:%S"]
    whereStuff = AddressSerializer(required=True)
    doTime = serializers.DateTimeField(input_formats=timeformats, required=False)

和序列化错误:

{
    "doTime": [
        "Datetime has wrong format. Use one of these formats instead:
            iso-8061,
            rfc-3339,
            YYYY-MM-DDThh:mm:ss.uuuuuuZ, 
            YYYY-MM-DDThh:mm:ssZ, 
            YYYY-MM-DDThh:mm:ss.uuuuuu, 
            YYYY-MM-DDThh:mm:ss"
    ]
}

(格式为清晰)

我试图解释额外的小数点,但这不起作用,因为来自JSON.net版本的iso-8061的小数超过了微秒,Python的strptime卡住了。

.1726639z
.uuuuuuZ

有什么建议吗?

可能是因为ISO 8061处理高山滑雪绑定(http://iso.org/obp/ui/#iso:std:iso:8061:ed-4:v1:en),这与编程完全无关。也许你指的是8601 ?

相关内容

  • 没有找到相关文章

最新更新