我正在使用 Django / Rest Framework 开展一个小项目。我想更新我的表格(因为我已经有一些行)我只想更新一列 status
但我收到关于其他字段的错误信息:
如何只更新一个字段,正好status
,我想将状态设置为1,而不更新其他列,
(Django 一直告诉我需要其他字段,如标题、手机)
这是我的代码:
obj = Task.objects.filter(id=tasks['id']).first()
serializer = self.serializer_class(obj, data = {'status':1})
if serializer.is_valid():
serializer.save()
答案 0 :(得分:1)
正如官方 Django 文档中提到的,序列化程序必须为所有必填字段传递值。为了省略此行为,您需要将 True
分配给 partial
属性。
obj = Task.objects.filter(id=tasks['id']).first()
serializer = self.serializer_class(obj, data = {'status':1}, partial=True)
if serializer.is_valid():
serializer.save()