from rest_framework.generics import ListAPIView, RetrieveAPIView from rest_framework.response import Response from rest_framework.exceptions import NotFound from rest_framework.permissions import IsAuthenticated from apps.archive.models import CreatorModel from .serializers import ( CreatorListSerializer, CreatorDetailsSerializer, ) class CreatorListView(ListAPIView): permission_classes = [IsAuthenticated] serializer_class = CreatorListSerializer def get_queryset(self): user = self.request.user.userprofile if user.show_mature: return CreatorModel.objects.all() else: return CreatorModel.objects.filter(mature=False) class CreatorDetailsView(RetrieveAPIView): permission_classes = [IsAuthenticated] serializer_class = CreatorDetailsSerializer lookup_field = "creator_id" def get_queryset(self): user = self.request.user.userprofile if user.show_mature: return CreatorModel.objects.all() else: return CreatorModel.objects.filter(mature=False)