如何只更新一个字段

时间:2021-04-21 09:00:42

标签: python django django-rest-framework

我正在使用 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()

1 个答案:

答案 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()