Exemplo n.º 1
0
 def profile(self, request, *args, **kwargs):
     user = self.get_object()
     profile = user.profile
     partial = request.method == 'patch'
     serializer = ProfileModelSerializer(profile,
                                         data=request.data,
                                         partial=partial)
     serializer.is_valid(raise_exception=True)
     serializer.save()
     data = UserModelSerializer(user).data
     return Response(data)
Exemplo n.º 2
0
 def profile(self, request, *args, **kwargs):
     """ Update profile data """
     user = self.get_object()
     profile = user.profile
     partial = request.method == 'PATCH'
     serializer = ProfileModelSerializer(profile,
                                         data=request.data,
                                         partial=partial)
     serializer.is_valid(raise_exception=True)
     serializer.save()
     data = UserModelSerializer(user).data
     return Response(data, status=status.HTTP_200_OK)
Exemplo n.º 3
0
 def profile(self, request, *args, **kwargs):
     """Update profile data."""
     user = request.user
     profile = user.profile
     partial = request.method == 'PATCH'
     serializer = ProfileModelSerializer(
         profile,
         data=request.data,
     )
     serializer.is_valid(raise_exception=True)
     serializer.save()
     data = UserWithoutTeacherModelSerializer(user).data
     return Response(data)
Exemplo n.º 4
0
 def profile(
     self, request, *args, **kwargs
 ):  # Esta vista solo se permitira para el dueño de la cuenta.Esta vista tendra un path que sera despues la ruta de actualizar user <path update user>/profile/ para que actualice algo especifico
     """Actualiza datos de perfil"""
     user = self.get_object(
     )  # Devuelve el usuario que se coloca con su username en la url
     profile = user.profile
     partial = request.method == 'PATH'
     serializer = ProfileModelSerializer(
         profile,
         data=request.
         data,  # Son los datos recibidos desde el request desde el body
         partial=
         partial  # Este campo permite saber al serializer que sera parcial. Por defecto el serializer pensara que una actualizacion total. Para ambas peticiones no nos devolvera error si no mandamos nada, por que ningun dato es requerido
     )
     serializer.is_valid(raise_exception=True)
     serializer.save()
     data = UserModelSerializer(
         user
     ).data  # Usamos UserModelSerializer por que el serializer tendra un campo llamado profile
     return Response(data)