DRF更新无

时间:2018-11-08 20:21:52

标签: django-rest-framework

我知道这很基本,但是我正在拔头发。 在我以前的项目中,这始终可以更新。我拉起过去的项目进行比较,但这并没有更新,一直在寻找价值。我希望它采用不为null的值并保留以前的现有值。 也尝试了[ { "key":"John", "values":[ { "key":"A", "values":[ { "key":"Strongly Disagree", "values":0 }, { "key":"Disagree", "values":0 }, { "key":"Neutral", "values":0 }, { "key":"Agree", "value":2 }, { "key":"Strongly Agree", "value":3 } ] }, { } ] }, { "key":"Emily", "values":[ ] } ] ,但这在我的字段中给了Blank,这不是我想要的。

partial=True

因此,任何人都不应该是以前的

class UserRetrieveUpdateAPIView(generics.RetrieveUpdateAPIView): serializer_class = UserSerializer permission_classes = (IsAuthenticated, ) queryset = User.objects.all() def get_object(self): return self.request.user def update(self, request, *args, **kwargs): context = { 'user': request.user } serializer = self.serializer(request.user, data=request.data) if serializer.is_valid(raise_exception=True): self.perform_update(serializer) instance = serializer.instance self.clear_cache(request.user)

序列化器

print (serializer) #<User: demo@email.com>, data={'first_name': None, 'last_name': 'stupid', 'email': None, 'password': None}

0 个答案:

没有答案