본문 바로가기

프로그래밍/Django개발(MAC OS)

Django restframework 3. APIView

반응형

2021.04.03 - [프로그래밍/Django개발(MAC OS)] - [Django Rest Framework] 시작하기 Rest API 소개

2021.04.24 - [프로그래밍/Django개발(MAC OS)] - Django restframework 2. 설치하기

 

 

 


 

Django RestFramework APIView 사용하기

 

APIView는 restframework에서 제공해주는 Class기반의 API VIEW입니다.

 

그래서 클래스를 생성해주시면 됩니다.

 

사용방법

 

사용 방법은 간단히 APIView 상속받아서

get방식과 post방식으로 사용하시면 됩니다.

 

APIView에서의 장점은 테스트 화면도 함께 보여준다는 장점이 있습니다.

 

views.py

from rest_framework.views import APIView


class ListRoomsView(APIView):
    def get(self, request):
        pass
        
    def post(self,request):
    	pass

urls.py

from django.urls import path
from . import views

urlpatterns = [
    path('list/',views.ListRoomsView.as_view())
]

 

아래는 스터디중인 예제 코드입니다.

아래의 방식의 예제대로 사용하시면 됩니다.

from rest_framework.views import APIView
from .models import Room
from .serializers import RoomSerializer


class ListRoomsView(APIView):
    def get(self, request):
        rooms=Room.objects.all()
        serializer = RoomSerializer(rooms,many=True)
        return Response(serializer.data)

 

근데 위의 방식은

APIView에서 모든 리스트를 가지고와서 보여주는 방식입니다.

List를 보여주는 방식은 Django에서 ListAPIView를 제공해주는데

이를 활용하면, 우리가 원하는 데이터의 길이만큼을 확인 할 수 있도록 해줍니다.

 

다음에는 ListAPIView를 사용해서 Pagination 기능까지 한번 다뤄보겠습니다.

 

반응형