Change api view method
This commit is contained in:
parent
d51d304077
commit
bb38bb3393
|
|
@ -1,5 +1,4 @@
|
|||
"""Establishment app views."""
|
||||
from collections import defaultdict
|
||||
|
||||
from django.shortcuts import get_object_or_404
|
||||
from django_filters.rest_framework import DjangoFilterBackend
|
||||
|
|
@ -33,21 +32,17 @@ class EstablishmentListCreateView(EstablishmentMixinViews, generics.ListCreateAP
|
|||
serializer_class = serializers.EstablishmentListCreateSerializer
|
||||
|
||||
|
||||
class EmployeeEstablishmentPositionsView(generics.GenericAPIView):
|
||||
class EmployeeEstablishmentPositionsView(generics.ListAPIView):
|
||||
"""Establishment by employee view."""
|
||||
|
||||
permission_classes = [IsWineryReviewer | IsCountryAdmin | IsEstablishmentManager]
|
||||
queryset = models.EstablishmentEmployee.objects.all()
|
||||
serializer_class = serializers.EstablishmentEmployeePositionsSerializer
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
def get_queryset(self):
|
||||
employee_pk = self.kwargs.get('pk')
|
||||
|
||||
return Response(self.get_serializer(
|
||||
self.get_queryset().filter(employee__id=employee_pk).all()
|
||||
.prefetch_related('establishment').select_related('position'),
|
||||
many=True
|
||||
).data)
|
||||
return super().get_queryset().filter(employee__id=employee_pk).all().prefetch_related(
|
||||
'establishment').select_related('position')
|
||||
|
||||
|
||||
class EmployeeEstablishmentsListView(generics.ListAPIView):
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user