feat: add destroy method to UserViewSet for user deletion

This commit is contained in:
Chneemann 2025-03-31 04:16:54 +02:00
parent 144ab73dc8
commit c80fdb2588

View file

@ -5,6 +5,7 @@ from .serializers import UserSerializer
from .caching import get_cached_user_by_id from .caching import get_cached_user_by_id
from rest_framework.permissions import IsAuthenticated from rest_framework.permissions import IsAuthenticated
from rest_framework import status from rest_framework import status
from django.core.cache import cache
class UserViewSet(viewsets.ModelViewSet): class UserViewSet(viewsets.ModelViewSet):
permission_classes = [IsAuthenticated] permission_classes = [IsAuthenticated]
@ -23,3 +24,9 @@ class UserViewSet(viewsets.ModelViewSet):
serializer = self.get_serializer(user) serializer = self.get_serializer(user)
return Response(serializer.data) return Response(serializer.data)
def destroy(self, request, *args, **kwargs):
user = self.get_object()
user.delete()
cache.delete(f"user_{user.id}")
return Response({'message': 'User deleted successfully.'}, status=status.HTTP_200_OK)