From dd4aa0aebc6ee91494e23e7824f7a427f568b27c Mon Sep 17 00:00:00 2001 From: Aroy-Art Date: Sat, 8 Feb 2025 17:59:30 +0100 Subject: [PATCH] Refactor: ProfileView to use the RetriveUpdateAPIView class --- backend/api/user/views.py | 27 ++++++--------------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/backend/api/user/views.py b/backend/api/user/views.py index 57ab789..9d7c81d 100644 --- a/backend/api/user/views.py +++ b/backend/api/user/views.py @@ -1,28 +1,13 @@ +from rest_framework.generics import RetrieveUpdateAPIView from rest_framework.permissions import IsAuthenticated from .serializers import UserSerializer +class ProfileView(RetrieveUpdateAPIView): + """Retrieve and update the authenticated user's profile.""" -class ProfileView(APIView): permission_classes = [IsAuthenticated] + serializer_class = UserSerializer - def get(self, request): - user = request.user - serializer = UserSerializer(user) - return Response(serializer.data) - - def patch(self, request): - user = request.user - serializer = UserSerializer(user, data=request.data, partial=True) - if serializer.is_valid(): - serializer.save() - return Response(serializer.data) - return Response(serializer.errors, status=400) - - def put(self, request): - user = request.user - serializer = UserSerializer(user, data=request.data) - if serializer.is_valid(): - serializer.save() - return Response(serializer.data) - return Response(serializer.errors, status=400) + def get_object(self): + return self.request.user