ViewSet

Jeong Ha Seung·2021년 11월 27일
0

ViewSet을 이용하면 이때까지 serializer.py 파일에서 적은 것들은 필요가 없어진다.

ViewSet이란? Django REST framework는 단일 클래스에 관련 있는 view들을 결합한 ViewSet 기능을 제공한다. 즉, ViewSet는 여러 가지 API의 기능을 통합해서 하나의 API Set로 제공하는 것이다.

viewsets.py

from rest_framework import viewsets
from .models import Room
from .serializers import BigRoomSerializer


class RoomViewSet(viewsets.ModelViewSet):
    queryset = Room.objects.all()
    serializer_class = BigRoomSerializer

ViewSet은 우리한테 URL을 제공한다.

rooms/urls.py

from rest_framework.routers import DefaultRouter
from django.urls import path
from . import viewsets

app_name = "rooms"

router = DefaultRouter() #router를 이용하면 경로 지정을 DRF에서 자동화해주기 때문에 viewset의 url은 router로 설정을 해 준다.
router.register("", viewsets.RoomViewSet, basename="room")


urlpatterns = router.urls

위와 같이 나오는데 빨간색으로 표시된 링크에 들어가면

이전 글에서 작성했던 방들의 리스트가 나온다.

profile
블로그 이전했습니다. https://morethan-haseung-log.vercel.app

0개의 댓글

관련 채용 정보