장고 ORM 파헤치기 – N+1 문제, 지연 로딩, 즉시 로딩
이번 포스트에서는 “N+1 문제” 란 무엇이고 언제 발생하고 어떻게 해결해야 되는지 공부한 내용을 정리해보았습니다. N+1 문제는 ORM과 DB와의 상호작용에서 발생할 수 있는 문제인데요…
이번 포스트에서는 “N+1 문제” 란 무엇이고 언제 발생하고 어떻게 해결해야 되는지 공부한 내용을 정리해보았습니다. N+1 문제는 ORM과 DB와의 상호작용에서 발생할 수 있는 문제인데요…
“django silk”는 데이터베이스 쿼리를 포함하여 요청-응답 주기를 기록하고 분석하는 Django 애플리케이션용 프로파일링 도구입니다. 상세한 프로파일링 정보와 시각화를 제공하여 N+1 쿼리를 포함한 성능 병목 현상을 식별…
DRF CBV에는 APIView, GenericAPIView, Mixin, GenericView, ViewSet가 있습니다. 그 중에 “ViewSet” 은 무엇이며 어떻게 사용되는지 APIView 방법과 비교하며 정리해보았습니다.
DRF에서 다양한 JSON 구조로 응답할 수 있게 해주는 Serializer Method Fields, serializers의 source, to_representation() 에 대해서 공부한 내용을 정리해보았습니다.
장고 serializer의 강력한 기능 중 하나는 Nested 관계를 처리하는 기능으로, 관련 개체가 있는 데이터 구조를 직렬화 및 역직렬화할 수 있습니다. 이 기능은 Nested 관계의 데이터를 손쉽게 “계층 구조 JSON” 으로…
이전 포스트에서 DRF에서 CBV 패턴으로 view를 정의하는 법을 정리해보았습니다. 이번에는 CBV 중에서도 “장고 APIView”를 사용해서 CRUD를 구현해보려도 합니다.
테스트를 위해 Django 데이터베이스를 수동으로 채우다 보면 꽤나 시간을 잡아먹게 됩니다. 이때 사용할 수 있는 게 Django Seed 입니다. Django Seed는 Django 데이터베이스에 초기 또는 테스트 데이터를 빠르고 쉽게…
View 개발에는 FBV와 CBV라는 두 가지 주요 접근 방식을 사용할 수 있습니다. 특히나 pure django가 아닌 DRF를 사용하게 되면 FBV, CBV를 개발 방법을 더 체계적으로 제공…
지난 포스트에서 DRF 시리얼라이져를 사용해서 모델에 맞는 직렬화를 자동으로 해주고 API로 응답하는 방법을 정리했습니다. 이번에는 지난 정리에 이어서 DRF를 이용해서 CRUD에 대한 API를 생성하는 법을 공부하고 정리해보았습니다.
웹 애플리케이션이 발전함에 따라 다양한 클라이언트에 데이터를 제공하기 위해 RESTful API를 구축해야 할 필요성이 대두 되었습니다. 때문에 등장한 것이 Django Rest Framework( 장고 DRF )입니다.