from rest_framework import generics, permissions from news.models import News from news.serializers import common as serializers from utils.views import JWTGenericViewMixin class NewsList(generics.ListAPIView): """News list view.""" queryset = News.objects.all() permission_classes = (permissions.AllowAny, ) serializer_class = serializers.NewsSerializer class NewsCreate(generics.CreateAPIView): """News list view.""" queryset = News.objects.all() permission_classes = (permissions.IsAuthenticated, ) serializer_class = serializers.NewsCreateUpdateSerializer class NewsDetail(generics.RetrieveAPIView): """News detail view.""" queryset = News.objects.all() permission_classes = (permissions.AllowAny, ) serializer_class = serializers.NewsSerializer class NewsDelete(generics.DestroyAPIView): """News delete view.""" queryset = News.objects.all() permission_classes = (permissions.IsAuthenticated, ) class NewsUpdate(generics.UpdateAPIView): """News update view.""" queryset = News.objects.all() permission_classes = (permissions.IsAuthenticated, ) serializer_class = serializers.NewsCreateUpdateSerializer