Web/Django
[Django] Rest Framework란, serializer, view 등
anstjwls
2024. 3. 4. 22:19
장고 Rest 프레임워크는 웹 API를 구축하기 위한 강력하고 유연한 도구이다.
Serializers
시리얼라이저를 사용하면 querysets나 모델 인스턴스와 같은 복잡한 데이터를 기본 파이썬 데이터 유형으로 변환한 다음 JSON, XML 또는 다른 콘텐츠 유형으로 쉽게 렌더링할 수 있다. 시리얼라이저는 또한 병렬화를 제공하여 들어오는 데이터를 먼저 확인한 후 구문 분석된 데이터를 복잡한 유형으로 다시 변환할 수 있다.
Queryset?
쿼리셋은 전달받은 모델의 객체 목록으로 데이터베이스로부터 데이터를 읽고, 필터를 걸거나 정렬을 할 수 있다.
ModelSerializer
: 장고 모델 정의에 밀접하게 매핑되는 시리얼라이저 클래스
class AccountSerializer(serializers.ModelSerializer):
class Meta:
model = Account
fields = ['id', 'account_name', 'users', 'created'] //포함할 필드 지정
또는
fields = '__all__' //모든 필드 포함
Generic views
클래스 기반 뷰의 주요 장점은 재사용가능한 행동을 구성할 수 있는 바식이다. REST framework는 일반적으로 사용되는 패턴을 제공하는 많은 사전 구축된 뷰를 제공함으로써 이를 활용한다.
REST framework에서 제공되는 generic views를 이용하면 데이터베이스 모델에 밀접하게 매핑되는 API views를 빠르게 구축할 수 있다.