下面是我的简单视图集和序列化程序类:
class UserSerializer(ModelSerializer):
class Meta:
model = User
fields = ['id', 'email', 'first_name', 'last_name']
....
class UserViewSet(ModelViewSet):
queryset = User.objects.all()
serializer_class = UserSerializer
假设我只想更新用户的名字。在这种情况下,我应该使用PATCH
{"first_name": "New First Name"}
。但同时,看起来PUT
{"first_name": "New First Name"}
也以同样的方式工作,尽管它不应该这样,因为它必须验证是否指定了所有字段。至少我是这么想的。我错了吗?如果我是,那么Django Rest框架中的update
和{djangorestframework==3.8.2
。谢谢您。在
如果您查看生成的序列化程序,您会发现您没有必需的字段。在这种情况下,PUT和PATCH将有类似的行为。 如果有任何必填字段,您会看到区别。在
相关问题 更多 >
编程相关推荐