mirror of
https://github.com/TurTaskProject/TurTaskWeb.git
synced 2025-12-19 05:54:07 +01:00
37 lines
1.3 KiB
Python
37 lines
1.3 KiB
Python
from rest_framework import status
|
|
from rest_framework.response import Response
|
|
from rest_framework.generics import CreateAPIView, RetrieveAPIView, RetrieveUpdateAPIView, DestroyAPIView
|
|
from rest_framework.permissions import IsAuthenticated
|
|
from ..models import Task
|
|
from .serializers import TaskCreateSerializer, TaskGeneralSerializer
|
|
|
|
class TaskCreateView(CreateAPIView):
|
|
queryset = Task.objects.all()
|
|
serializer_class = TaskCreateSerializer
|
|
permission_classes = [IsAuthenticated]
|
|
|
|
def create(self, request, *args, **kwargs):
|
|
serializer = self.get_serializer(data=request.data)
|
|
|
|
if serializer.is_valid():
|
|
self.perform_create(serializer)
|
|
return Response(serializer.data, status=status.HTTP_201_CREATED)
|
|
|
|
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
|
|
|
|
|
|
class TaskRetrieveView(RetrieveAPIView):
|
|
queryset = Task.objects.all()
|
|
serializer_class = TaskGeneralSerializer
|
|
permission_classes = [IsAuthenticated]
|
|
|
|
|
|
class TaskUpdateView(RetrieveUpdateAPIView):
|
|
queryset = Task.objects.all()
|
|
serializer_class = TaskGeneralSerializer
|
|
permission_classes = [IsAuthenticated]
|
|
|
|
|
|
class TaskDeleteView(DestroyAPIView):
|
|
queryset = Task.objects.all()
|
|
permission_classes = [IsAuthenticated] |