django-rest-framework-3通用视图将原始密码更新为哈希

时间:2015-01-13 12:54:41

标签: django django-rest-framework

在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

来解决这个问题

1 个答案:

答案 0 :(得分:0)

您使用的ListCreateAPIView没有UpdateModelMixin。根据{{​​3}}:

  

perform_update(self,serializer) - 由 UpdateModelMixin 调用   保存现有的对象实例。