from snippets.models import Snippet from snippet.serializers import SnippetSerializer from django.http import Http404 from rest_framework.views import APIView from rest_framework.response import Response from rest_framework import status
classSnippetList(APIView): """ List all snippets, or create a new snippet. """ defget(self, request, format=None): snippets = Snippet.objects.all() serializer = SnippetSerializer(snippets, many=True) return Response(serializer.data) defpost(self, request, format=None): serializer = SnippetSerializer(data=request.data) if serializer.is_valid(): serializer.save() return Response(serializer.data, status=status.HTTP_201_CREATED) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
여기까지 아주 좋습니다. 이전과 꽤 비슷해 보입니다만, 우리는 다른 HTTP 메서드들을 사이에 두고 구분을 짓고 있습니다. 우리는, 우리의 인스턴스 뷰도 업데이트 해줄 것입니다.