Django REST framework : Tutorial1 - Serialization(1)

이태연·2021년 12월 27일
1
post-thumbnail

serializer란?

queryset,모델 인스턴스 같은 복잡한 데이터를 JSON,XML 등의 콘텐츠 타입으로 쉽게 변환할 수 있도록 함

가상환경 생성 후 필요한 패키지들을 설치해줍니다.

pip install django
pip install djangorestframework
pip install pygments #코드 하이라이팅을 위해 필요한 패키지

Getting Started

패키지 설치 후 새로운 프로젝트를 생성해 줍니다.

django-admin startproject tutorial
cd tutorial

앱을 생성해 줍니다.

python manage.py startapp snippets

프로젝트 앱 생성 후 디렉토리 구조입니다.

snippets앱과 rest_framework앱을 INSTALLED_APPS에 추가해줍니다.

Creating a model to work with

코드 스니펫을 저장하는 간단한 snippet모델을 생성합니다.

python manage.py makemigrations snippets
python manage.py migrate

Creating a Serializer Class

snippet/serializers.py 파일을 생성 후 아래 내용을 추가해 줍니다.

Working with Serializers

인스턴스 생성

인스턴스 serializing

이 시점에서 모델 인스턴스를 파이썬 네이티브 데이터 유형으로 변환했습니다. serialization 프로세스를 마무리하기 위해 데이터를 json으로 렌더링합니다.

Deserialization
Deserialization도 유사합니다. json으로 렌더링 되었던 content를 BytesIO로 전환한후에 stream에 담아줍니다.
그리고 stream을 parse하여 파이썬 네이티브 데이터 유형으로 바꿔줍니다.
그리고 난 후, 파이썬 네이티브 데이터 유형을 완전히 채워진 객체 인스턴스로 복원합니다.

profile
주니어 백엔드 웹 개발자입니다.

0개의 댓글