Files
MOHPortal/users/views.py

33 lines
905 B
Python

from django.shortcuts import render
from rest_framework import generics, permissions
from rest_framework.response import Response
from rest_framework.decorators import api_view
from .models import User
from .serializers import UserSerializer
class UserListView(generics.ListAPIView):
"""
API view to retrieve list of users.
"""
queryset = User.objects.all()
serializer_class = UserSerializer
permission_classes = [permissions.IsAuthenticated]
class UserDetailView(generics.RetrieveAPIView):
"""
API view to retrieve a single user.
"""
queryset = User.objects.all()
serializer_class = UserSerializer
permission_classes = [permissions.IsAuthenticated]
@api_view(['GET'])
def current_user(request):
"""
API endpoint to retrieve the current user's profile.
"""
serializer = UserSerializer(request.user)
return Response(serializer.data)