我正在将日期时间值放入我的 drf 后端。这是我的代码:
模型.py
class MyModel(models.Model):
....
date = models.DateField(blank=true, null=true)
.....
序列化器.py
class MyModelSerializer(ModelSerializer):
class Meta:
model = MyModel
fields = '__all__'
View .py
class UpdateNRetrieve(RetrieveUpdateAPIView):
queryset = MyModel.objects.all()
serializer_class = MyModelSerializer
lookup_field = 'pk'
在我的 settings.py 上我有这个:
REST_FRAMEWORK = [
.....
'DATE_FORMAT': '%d/%m/%Y',
'DATE_INPUT_FORMATS': '%d/%m/%Y',
.....
]
还有这个:
LANGUAGE_CODE = 'it-IT'
TIME_ZONE = 'Europe/Rome'
USE_I18N = True
USE_L10N = True
USE_TZ = True
当我从前端发出 PUT 请求时,我收到一个 400 错误(错误请求),该值如下:
date:"04/12/1984"
我总是得到这样的回复:
日期格式错误。请改用以下格式之一:%、d、/、%、m、/、%、Y。"
我不知道我的错误在哪里!
最佳答案
settings.py 中的 DATE_INPUT_FORMATS 应该是一个列表:
'DATE_INPUT_FORMATS': ['%d/%m/%Y'],
关于发布日期字段时djangorest 400响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46749929/