在django-rest-framework 2.x中我曾经使用通用api中的post_save()方法将我的原始密码更新为哈希。
我的新通用视图类就像这样
class UserList(generics.ListCreateAPIView):
queryset = User.objects.all()
serializer_class = UserSerializer
def perform_update(self, serializer):
#pdb.set_trace()
obj = self.get_object()
password = obj.set_password(obj.password)
serializer.save(password=password)
在使用pdb进行调试时,我发现从不调用perform_update()函数。
Plz帮助我如何使用django-rest-framework-3
来解决这个问题答案 0 :(得分:0)
您使用的ListCreateAPIView没有UpdateModelMixin。根据{{3}}:
perform_update(self,serializer) - 由 UpdateModelMixin 调用 保存现有的对象实例。