我试图了解为什么会这样。我有一个Django DateTime字段和使用该字段的Django Rest Framework序列化程序。
我正在尝试比较两个日期,并从JSON端点和模型结果中获取以下结果:
DRF: 2018-12-21T19:17:59.353368Z
Model field: 2018-12-21T19:17:59.353368+00:00
有没有办法使它们相似?因此,可以将它们都设为“ Z”或“ +00:00”。
答案 0 :(得分:4)
我从Google来到这里,寻求一种快速修复方法(例如复制和粘贴)。因此,借鉴@RezaTorkamanAhmadi的答案,对于希望获得DRF序列化器DateTimeField格式为models.DateTimeField
(与默认# settings.py
REST_FRAMEWORK = {
...
'DATETIME_FORMAT': "%Y-%m-%d %H:%M:%S.%f%z",
...
}
相同的格式,以便您的序列化值与模型值匹配的任何人) OP的问题也是我的问题),您正在寻找以下哪一个?
from rest_framework import serializers
class MySerializer(serializers.Serializer):
some_date = serializers.DateTimeField(format="%Y-%m-%d %H:%M:%S.%f%z")
或者如果您只想在特定的DateTimeField序列化器字段中查找
snmp2_get()
来源:
答案 1 :(得分:3)
这是因为django rest框架使用了它自己的日期时间格式。要更改此设置,请在您的settings.py
文件中,存在一个名为REST_FRAMEWORK
的dict变量(如果未创建的话)并添加以下内容:
REST_FRAMEWORK = {
...
'DATETIME_FORMAT': "%Y-%m-%d - %H:%M:%S",
...
}
还要在您的USE_TZ
中检查settings.py
变量状态
答案 2 :(得分:1)
除了上一个答案,您还可以在序列化程序中更改$("#table-body #c1").on('click','tr',function(e){
console.log($(this).text());
});
格式。
DateTime