Files
eimzo/core/apps/accounts/views/user.py
2025-11-05 12:09:13 +05:00

29 lines
1.0 KiB
Python

from rest_framework import generics, views
from rest_framework.permissions import IsAuthenticated
from rest_framework.response import Response
from core.apps.accounts.serializers import user as serializers
from core.apps.accounts.models import User
class UserProfileApiView(views.APIView):
permission_classes = [IsAuthenticated]
def get(self, request):
user = request.user
serializer = serializers.UserSerializer(user)
return Response(serializer.data, status=200)
class UserProfileUpdateApiView(generics.GenericAPIView):
serializer_class = serializers.UserUpdateSerializer
permission_classes = [IsAuthenticated]
queryset = User.objects.all()
def patch(self, request):
user = request.user
serializer = self.serializer_class(data=request.data, instance=user)
if serializer.is_valid(raise_exception=True):
data = serializer.save()
return Response(serializers.UserSerializer(data).data, status=200)
return Response(serializer.errors, status=400)