from django.contrib.contenttypes.models import ContentType from django_filters.rest_framework import DjangoFilterBackend from rest_framework import generics, permissions from main import serializers from main.filters import AwardFilter from main.models import Award from main.views import SiteSettingsView, SiteListView class AwardLstView(generics.ListCreateAPIView): """Award list create view.""" queryset = Award.objects.all() serializer_class = serializers.BackAwardSerializer permission_classes = (permissions.IsAdminUser,) filterset_class = AwardFilter class AwardRUDView(generics.RetrieveUpdateDestroyAPIView): """Award RUD view.""" queryset = Award.objects.all() serializer_class = serializers.BackAwardSerializer permission_classes = (permissions.IsAdminUser,) lookup_field = 'id' class ContentTypeView(generics.ListAPIView): """ContentType list view""" queryset = ContentType.objects.all() serializer_class = serializers.ContentTypeBackSerializer permission_classes = (permissions.IsAdminUser,) filter_backends = (DjangoFilterBackend, ) ordering_fields = '__all__' lookup_field = 'id' filterset_fields = ( 'id', 'model', 'app_label', ) class SiteSettingsBackOfficeView(SiteSettingsView): """Site settings View.""" serializer_class = serializers.SiteSettingsBackOfficeSerializer class SiteListBackOfficeView(SiteListView): """Site settings View.""" serializer_class = serializers.SiteBackOfficeSerializer