gault-millau/apps/establishment/views.py

35 lines
1.2 KiB
Python

"""Establishment app views."""
from rest_framework import generics, permissions
from establishment import models, serializers
from utils.views import JWTGenericViewMixin
from establishment import filters
class EstablishmentListView(JWTGenericViewMixin, generics.ListAPIView):
"""Resource for getting a list of establishments."""
permission_classes = (permissions.AllowAny,)
serializer_class = serializers.EstablishmentSerializer
filter_class = filters.EstablishmentFilter
def get_queryset(self):
"""Overrided method 'get_queryset'."""
return models.Establishment.objects.all().prefetch_actual_employees()
class EstablishmentRetrieveView(JWTGenericViewMixin, generics.RetrieveAPIView):
"""Resource for getting a establishment."""
permission_classes = (permissions.AllowAny,)
serializer_class = serializers.EstablishmentSerializer
queryset = models.Establishment.objects.all()
class EstablishmentTypeListView(JWTGenericViewMixin, generics.ListAPIView):
"""Resource for getting a list of establishment types."""
permission_classes = (permissions.AllowAny,)
serializer_class = serializers.EstablishmentTypeSerializer
queryset = models.EstablishmentType.objects.all()