고통은 사라지고 결과는 남는다. Records of Chansolve

Django REST framework에서 ViewSet과 APIView 본문

Computer Science

Django REST framework에서 ViewSet과 APIView

엄청큰노란닭 2023. 4. 24. 11:15

APIView :

Function-based view (FBV)와 Class-based view (CBV)와 유사합니다. 각 HTTP 요청 메서드 (GET, POST, PUT, DELETE 등)에 대해 메서드를 작성해야합니다. APIView를 사용하면 매우 정교한 작업을 수행 할 수 있습니다. 예를 들어, 특정 요청에 대해 다른 serializer를 사용하거나, 다른 인증 방법을 적용하거나, 다른 렌더러를 사용하는 것과 같은 작업을 수행 할 수 있습니다. 그러나 이러한 유연성은 코드를 작성하는 데 더 많은 노력이 필요하다는 것을 의미합니다.

 

ViewSet :

ViewSet은 일반적으로 APIView에서 수행하는 작업을 더 쉽게 수행 할 수 있도록 해주는 Class입니다. ViewSet에서는 HTTP 요청 메서드 (GET, POST, PUT, DELETE 등)와 관련하여 작성 할 필요가 없습니다. 대신, 각 HTTP 요청 메서드에 대해 기본 작업 (create, retrieve, update, delete, list)을 제공합니다. 이러한 기본 작업은 매우 일반적이므로 대부분의 API에서 사용됩니다. ViewSet은 일반적으로 코드를 덜 작성해야하기 때문에, 덜 복잡하고 유지 보수하기 쉬울 수 있습니다.

 

따라서, ViewSet은 CRUD (Create, Read, Update, Delete) 작업과 같은 일반적인 작업을 수행하는 API를 만들 때 유용할 수 있으며, APIView는 더 복잡한 작업을 수행해야 할 때 사용됩니다.

Comments