Strip API to required minimum

- disable browseable API
- use IsAdminUser for DEFAULT_PERMISSION_CLASSES
- register explicit API views for HelpUser model
This commit is contained in:
Jan Dittberner 2023-04-16 14:34:45 +02:00
parent 0f91587c60
commit 5cf7ef7a23
3 changed files with 28 additions and 11 deletions

View file

@ -1,15 +1,26 @@
from rest_framework import permissions, viewsets
from rest_framework import generics
from help.models import HelpUser
from help.serializers import HelpUserSerializer
class HelpUserViewSet(viewsets.ModelViewSet):
class ListHelpUserAPIView(generics.ListAPIView):
"""
API endpoint that allows user help profile to be viewed or edited.
"""
queryset = HelpUser.objects.all().order_by("user__username")
queryset = (
HelpUser.objects.all().prefetch_related("user").order_by("user__username")
)
serializer_class = HelpUserSerializer
class HelpUserAPIView(generics.RetrieveUpdateAPIView):
"""
API endpoint that allows user help profile to be viewed or edited.
"""
queryset = HelpUser.objects.all()
serializer_class = HelpUserSerializer
permission_classes = [permissions.IsAdminUser]