View-классы API в Django. Задание 3

Напишите на основе дженериков два view-класса: APIPostList и APIPostDetail.

Опишите два эндпоинта:

  • api/v1/posts/,
  • api/v1/posts/<pk>/.

Через эти эндпоинты должны быть доступны любые операции с моделью Post:

  • POST-запрос на api/v1/posts/ создаст новую запись.
  • Запросы PUT, PATCH или DELETE к адресу api/v1/posts/<pk>/ удалят или изменят существующую запись.
  • GET-запрос на те же адреса вернёт список объектов или один объект.

Подсказка:
Для каждого класса пропишите queryset и serializer_class.

Код views.py:

from rest_framework import generics

from .models import Post
from .serializers import PostSerializer


class APIPostList(generics.ListCreateAPIView):
    queryset = Post.objects.all()
    serializer_class = PostSerializer


class APIPostDetail(generics.RetrieveUpdateDestroyAPIView):
    queryset = Post.objects.all()
    serializer_class = PostSerializer

Архив проекта:





Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: