본문 바로가기
  • 기억보단 기록을..

Python/DRF4

[DRF] ModelSerializer 사용법 (feat. method-hyperlink) DRF ModelSerializers 1. ModelSerializer 란? 이전에는 Serializer를 만들 때, 각 필드를 하나하나 정의해 주었다. 마치 모델을 다시 한 번 작성하는 것 같은 불편함이 있었다. 이 문제를 해결해 주는 것이 ModelSerializer이다. ModelSerializer는 크게 아래와 같은 3가지 기능을 제공한다. 주는 편리함이 워낙 크기에 Base Serializer보다 훨씬 생산성을 높일 수 있다. (의존하고 있는 모델에 기반해서) Serializer 필드를 자동으로 만들어 줌 Serializer를 위한 validator 제공 : ex) unique_together_validators .create(), .update() 함수 기본으로 제공하여 다시 만들 필요 없음 .. 2021. 1. 20.
[DRF] JWT 사용하기 (feat.simplejwt) DRF에서 JWT사용하기 Json Web Token 최근에는 django-rest-framework-jwt 라이브러리를 많이 사용하지 않는다고 한다. 또한 DRF 공식문서에 따르면 djangorestframework-simplejwt 라이브러리 사용을 권장하고 있다. djangorestframework-jwt 라이브러리는 더이상 업데이트 되지 않는다고 함 결론 djangorestframework-simplejwt 라이브러리 사용해라 djangorestframework-jwt 는 업데이트 중단됨 # 설치 pip install djangorestframework-simplejwt # django settings.py REST_FRAMEWORK = { ... 'DEFAULT_AUTHENTICATION_CLAS.. 2021. 1. 19.
[DRF] CBV - APIView, Mixins, generics APIView, ViewSet CBV Class Based View django 에서는 view 를 통해서 HTTP 요청을 처리합니다. view에서 이를 처리하는 방법은 다양합니다. FBV(함수기반뷰), CBV(클래스기반뷰) 를 통해서도 API 를 만들 수 있지만 rest_framework 는 보다 쉽게, 효율적으로 만들 수 있습니다. # serializers.py from rest_framework import serializers from .models import Post class PostSerializer(serializers.ModelSerializer): class Meta: model = Post fields = '__all__' # views.py serializer = PostSerializer(data=reques.. 2021. 1. 5.
[DRF] Json 기초 Json JavaScript Object Notation 데이터 송수신을 JS객체로서 수행할 수 있게 해주는 가벼운 문자열 데이터 표현식 예시 { "squadName": "Super hero squad", "homeTown": "Metro City", "formed": 2016, "secretBase": "Super tower", "active": true, "members": [ { "name": "Molecule Man", "age": 29, "secretIdentity": "Dan Jukes", "powers": [ "Radiation resistance", "Turning tiny", "Radiation blast" ] }, { "name": "Madame Uppercut", "age": 39, .. 2021. 1. 5.