DRF에서는 이전에 사용하지 않던 시리얼라이저를 사용하게 된다. 오늘은 시리얼라이저의 소개,사용방법에 대하여 간단히 알아본다.
시리얼라이저 소개
시리얼라이저는 DRF에서 사용하는 핵심 구성요소다. django의 데이터를 JSON형식으로 변환하는 역할을 한다.
이 과정을 serialization이라고 한다.
반대로 JSON형식의 데이터를 Python 데이터 유형으로 변환하는 역직렬화를 가능하게 한다.
시리얼라이저를 통해서 JSON데이터의 유효성 검사, 필드 유형 변환과 같은 다양한 작업을 정의한다.
시리얼라이저 사용
시리얼라이저는 rest_framework의 serializers.ModelSerializer를 import 하여 사용한다.
ModelSerializer 클래스는 모델과 시리얼라이저 간의 필드를 자동으로 매핑해주는 역할을 한다.
더불어 쿼리셋을 다루기 위한 시리얼라이저를 생성할 수 있도록 한다.
즉 모델과 동일한 필드를 갖는 시리얼라이즈를 만들게 하고, CRUD를 지원하여 데이터베이스와의 상호작용을 간소화할 수 있다.
다음과 같이 시리얼라이저를 작성한다. Meta 클래스에 직렬화에 포함시킬 모델과 필드를 정의한다.
이 시리얼라이저를 사용하려면
아래와 같이 시리얼라이저 인스턴스를 생성하고, 모델 객체나 쿼리셋을 속성으로 전할하도록 한다.
'Project > Team22' 카테고리의 다른 글
[Team 22] DRF Authentication - dj-rest-auth (0) | 2024.02.08 |
---|---|
[Team 22] Django REST framework (3) - Viewset (0) | 2024.02.03 |
[Team 22] Django REST Framework(1) (0) | 2024.02.03 |
[23-2]개발 환경 설정, 개발 설계, 구현 (0) | 2023.11.24 |
[Team22] EC2 인스턴스 (0) | 2023.11.10 |