Django REST Framework/DRF 일반

[DRF] 참고(reference) 정리 - 포스팅 하기엔 정리가 잘된 글 모음

bluebamus 2024. 2. 2. 01:52

1. 2024-02-02 1차 업데이트


 

 1. Django Rest Framework(DRF) APIView 동작 원리 분석 :

https://velog.io/@hoonki/Django-Rest-FrameworkDRF-APIView-%EB%8F%99%EC%9E%91-%EC%9B%90%EB%A6%AC-%EB%B6%84%EC%84%9D

 

Django Rest Framework(DRF) APIView 동작 원리 분석

사내에서 Rest API 개발 프레임워크로 Django Rest Framework(DRF)를 사용 중이다. DRF에서 APIView는 Class Based View의 일종으로 클래스 안에 serializer나 permission, throttle 클래스를 명시해주면 알

velog.io

 

 2. EP 03 - JSON 응답뷰 만들기 (부제 - APIView부터 ViewSet까지) : 

https://www.lostcatbox.com/2020/01/11/DRF03/#EP-03-JSON-%EC%9D%91%EB%8B%B5%EB%B7%B0-%EB%A7%8C%EB%93%A4%EA%B8%B0-%EB%B6%80%EC%A0%9C-APIView%EB%B6%80%ED%84%B0-ViewSet%EA%B9%8C%EC%A7%80

 

DRF 기본편 3 · lostcatbox

Word count: 1.8kReading time: 11 min  2020/01/11   Share     

www.lostcatbox.com

 

 3. EP 04 - ViewSet과 Router : 

https://www.lostcatbox.com/2020/01/17/DRF04/#EP-04-ViewSet%EA%B3%BC-Router

 

DRF 기본편 4 · lostcatbox

Word count: 1.4kReading time: 8 min  2020/01/17   Share     

www.lostcatbox.com

 

 4. EP 05 - format 인자와 다양한 Renderer :

https://www.lostcatbox.com/2020/01/18/DRF05+06+07/#EP-05-format-%EC%9D%B8%EC%9E%90%EC%99%80-%EB%8B%A4%EC%96%91%ED%95%9C-Renderer

 

DRF 기본편 5+6+7 · lostcatbox

Word count: 1.5kReading time: 9 min  2020/01/18   Share     

www.lostcatbox.com

 

 5. EP 08 - Serializer를 통한 유효성 검사 및 저장 :

https://www.lostcatbox.com/2020/01/21/DRF08/#EP-08-Serializer%EB%A5%BC-%ED%86%B5%ED%95%9C-%EC%9C%A0%ED%9A%A8%EC%84%B1-%EA%B2%80%EC%82%AC-%EB%B0%8F-%EC%A0%80%EC%9E%A5

 

DRF 기본편 8 · lostcatbox

Word count: 1.1kReading time: 6 min  2020/01/21   Share     

www.lostcatbox.com

 

 6. EP 09 - Authentication과 Permissions : 

https://www.lostcatbox.com/2020/01/22/DRF09/#EP-09-Authentication%EA%B3%BC-Permissions

 

DRF 기본편 9 · lostcatbox

Word count: 2kReading time: 12 min  2020/01/22   Share     

www.lostcatbox.com

 

 7. EP 10 - Throttling : 

https://www.lostcatbox.com/2020/01/23/DRF10+11/

 

DRF 기본편 10+11 · lostcatbox

Word count: 1.4kReading time: 8 min  2020/01/23   Share     

www.lostcatbox.com

 

 8. JWT에서 Django request.user 까지의 여정 :

https://uiandwe.tistory.com/1306

 

JWT에서 Django request.user 까지의 여정

Django에서 request의 유저를 알기 위해선 request.user를 통해 알 수 있다. Django에서 지원하는 session 방식의 로그인 / rest_framework에서 지원하는 JWT 등 로그인을 하면 request.user의 정보를 가져올 수 있다.

uiandwe.tistory.com

 

 9. [DRF] Concept Part - Request & Response :

https://jaeseo0519.tistory.com/113#--%--FBV%--%--%--CBV

 

 10. Django REST Framework Views - ViewSets :

https://testdriven.io/blog/drf-views-part-3/

 

Django REST Framework Views - ViewSets

This article takes a deep dive into Django REST Framework's most powerful view, ViewSets.

testdriven.io

 

 11. 05) Django REST Framework에서의 인증과 권한 부여 - simplejwt :

https://wikidocs.net/197565

 

05) Django REST Framework에서의 인증과 권한 부여

[TOC] > 자세한 인증(Authentication)과 권한 부여(Authorization)은 09장에서 다루도록 하겠습니다. Django REST Framework(DRF…

wikidocs.net

 

 12. 06) 페이지네이션, 필터링, 그리고 정렬 :

https://wikidocs.net/197566

 

06) 페이지네이션, 필터링, 그리고 정렬

[TOC] Django REST Framework에서 페이지네이션, 필터링, 그리고 정렬을 지원하는 API를 만드는 것은 매우 쉽습니다. 이러한 기능은 대량의 데이터를 반환하는…

wikidocs.net

 

 13. 07) API 문서화 및 테스트 - django-rest-framework-docs :

https://wikidocs.net/197567

 

07) API 문서화 및 테스트

[TOC] API 문서화와 테스트는 API 개발에서 가장 중요한 측면 중 하나입니다. 명확하고 정확하며 포괄적인 문서는 개발자가 API를 올바르게 이해하고 사용할 수 있도록 보…

wikidocs.net

 

 14. 08) API 버전 관리와 배포 :

https://wikidocs.net/197568

 

08) API 버전 관리와 배포

[TOC] ## API 버전 관리 소개와 중요성 API 버전 관리는 API를 변경하면서 클라이언트에게 파괴적인 변화를 가져오지 않고 API를 변경하는 중요한 개발 관행입니다.…

wikidocs.net

 

 15. 02) Django 성능 최적화 :

https://wikidocs.net/197786

 

02) Django 성능 최적화

[TOC] Django 애플리케이션의 성능 최적화는 일반적인 성능 병목 현상을 식별하고 수정하며, 데이터베이스 상호작용을 최적화하고, Django의 내장 캐싱 및 최적화 기능…

wikidocs.net

 

 16. 03) Django REST 프레임워크 성능 최적화 :

https://wikidocs.net/197787

 

03) Django REST 프레임워크 성능 최적화

[TOC] Django REST Framework (DRF) 성능 최적화는 일반적인 성능 병목 현상을 식별하고 수정하는 것, 페이징, 필터링 및 직렬화 최적화와 같은 API 최…

wikidocs.net

 

 17. [Django] DRF Router(라우터) 동작 원리 :

https://wookkl.tistory.com/64

 

[Django] DRF Router(라우터) 동작 원리

들어가며 DRF의 대표 클래스(ViewSet, Serializer, Router)중 하나인 Router의 종류와 동작원리를 알아본다. Router는 간단하고 빠르게 자동으로 url 라우팅을 할 수 있도록 해준다. from rest_framework import routers

wookkl.tistory.com

 

 18. [Django] DRF Serializer(시리얼라이저) 동작 원리 :

https://wookkl.tistory.com/63

 

[Django] DRF Serializer(시리얼라이저) 동작 원리

들어가며 DRF에서 주요 클래스(ViewSet, Router, Serializer) 중 하나인 Serializer의 동작 원리를 살펴본다. Serializer의 기능은 세 가지가 있는데 다음과 같다. 모델 객체 → 파이썬 네이티브 타입인 dict 타입

wookkl.tistory.com

 

 19. Gunicorn 동작 과정 알아보기 :

https://wookkl.tistory.com/59

 

Gunicorn 동작 과정 알아보기

파이썬 웹 애플리케이션과 웹 서버 사이에 위치하는 Gunicorn 이라는 WSGI가 어떻게 동작하는지 알아본다. WSGI? Web Server Gateway Interface의 약자로 파이썬의 WAS이다. 어떻게 Gunicorn이 내 장고 애플리케

wookkl.tistory.com

 

 20. [Django] Django의 동작 원리와 과정 파헤치기 :

https://wookkl.tistory.com/60

 

[Django] Django의 동작 원리와 과정 파헤치기

Django 동작과정 WSGI Application 생성 settings에서 정의한 settings.MIDDLEWARE 로드 WSGI(uwsgi, gunicorn)에서 applcation call WSGI environ(request data를 담은 딕셔너리)과 함께 WSGIRequest 인스턴스 생성 미들웨어 체인에 W

wookkl.tistory.com

 

 21. PyTest와 함께 사용하기 좋은 라이브러리와 플러그인 - Schema, PyTest Lazy_Fixture

https://www.qu3vipon.com/pytest-schema-lazyfixture#b0e4ac60-8816-4153-b60f-783d10925f85

 

PyTest와 함께 사용하기 좋은 라이브러리와 플러그인

Intro

www.qu3vipon.com

 

 22. Schema 사용법 :

https://www.qu3vipon.com/35f5dfb2-25f7-4bed-a836-89c332fee70c

 

Schema 사용법

 

www.qu3vipon.com

 

 23. [Django] 하나의 APIView에서 Serializer_class가 다를 때 :

https://velog.io/@haremeat/Django-%ED%95%98%EB%82%98%EC%9D%98-APIView%EC%97%90%EC%84%9C-Serializerclass%EA%B0%80-%EB%8B%A4%EB%A5%BC-%EB%95%8C

 

[Django] 하나의 APIView에서 Serializer_class가 다를 때

하나의 APIView에서 기능별로 가져와야 하는 serializer_class가 다를 때 어떤 식으로 해결해야하는가

velog.io

 

 24. [Django] DRF Filtering APIView로 적용해보기 :

https://tcitr-antoliny.tistory.com/40

 

[Django] DRF Filtering APIView로 적용해보기

검색 기능을 통해 사용자가 원하는 필드의 값으로 특정 모델객체를 찾을 수 있는 기능을 구현하려고 합니다. 그렇다면 Backend에서는 사용자가 입력한 값을 받아 값에 맞는 모델 객체를 찾아가는

tcitr-antoliny.tistory.com

 

 25. Django(DRF) CORS 정책 해결 - proxy 사용

https://tcitr-antoliny.tistory.com/44

 

Django(DRF) CORS 정책 해결

Product를 가져오는 API를 만들고 DRF를 통해 구현하고 테스트해봤지만 CORS정책에 의해 데이터를 가져오기 위한 접근이 차단되었다는 에러문구를 마주했습니다. CORS정책이라는게 뭘까요?? CORS(Cross-O

tcitr-antoliny.tistory.com

 

 26. [Django] AbstractUser로 User모델 커스터마이징 해보기 :

https://tcitr-antoliny.tistory.com/34

 

[Django] AbstractUser로 User모델 커스터마이징 해보기

--> 호밀밭의 파수꾼 - Django가 기본적으로 제공하는 User모델 [Django] Django가 기본적으로 제공하는 User모델 이용자와 관리자가 없는 웹사이트는 무용지물에 가깝습니다. 그렇기 때문에 어느 웹사이

tcitr-antoliny.tistory.com

 

 27. [Django] DRF 페이지네이션, APIView에서의 적용법 :

https://tcitr-antoliny.tistory.com/38

 

[Django] DRF 페이지네이션, APIView에서의 적용법

한꺼번에 특정 모델 객체의 데이터를 전부 가져오기보단 일정 데이터만 먼저 가져오고 사용자의 요청이 도착했을 때 다음 데이터를 가져오는 방식인 페이지네이션을 직접 구현하려면 어렵습니

tcitr-antoliny.tistory.com

 

 28. Django(DRF) + React SimpleJWT를 통한 로그인 Authentication구현 :

https://tcitr-antoliny.tistory.com/45

 

Django(DRF) + React SimpleJWT를 통한 로그인 Authentication구현

자신이 만든 사이트에 등록된(회원가입한) 유저들은 로그인이라는 과정을 거쳐 자신이라는 걸 증명합니다. 그리고 로그인한 유저들은 매번 어떠한 특정 페이지에 이동하거나 개인적인 정보가

tcitr-antoliny.tistory.com

 

 29. [Django] 음원 및 영상 파일 s3 업로드 :

https://velog.io/@nikevapormax/Django-%EC%9D%8C%EC%9B%90-%EB%B0%8F-%EC%98%81%EC%83%81-%ED%8C%8C%EC%9D%BC-s3-%EC%97%85%EB%A1%9C%EB%93%9C

 

[Django] 음원 및 영상 파일 s3 업로드

음원 및 영상 파일 업로드 현재 프로젝트에서 음원 및 영상 파일 s3 업로드 기능 구현을 하게 되었다. 첫 번째 방법은 로컬에서만 성공하였다. 해당 방법으로 s3에 파일을 압축해 올리고 싶었으나

velog.io

 

 30. [celery] ImportError: The curl client requires the pycurl library :

https://velog.io/@nikevapormax/celery-ImportError-The-curl-client-requires-the-pycurl-library

 

[celery] ImportError: The curl client requires the pycurl library.

ImportError: The curl client requires the pycurl library.

velog.io

 

 31. [Django] url을 사용해 데이터베이스 연결 :

https://velog.io/@nikevapormax/Django-url%EC%9D%84-%EC%82%AC%EC%9A%A9%ED%95%B4-%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-%EC%97%B0%EA%B2%B0

 

[Django] url을 사용해 데이터베이스 연결

dj_database_url

velog.io

 

 32. 로그인 구현 - Django(JWT) :

https://velog.io/@pjh1011409/%EB%A1%9C%EA%B7%B8%EC%9D%B8

 

로그인 구현 - Django(JWT)

https://www.youtube.com/watch?v=KClEOUOeFUQ https://developer0809.tistory.com/99?category=895002

velog.io

 

 33. [Django] DRF jwt 인증방식을 이용한 로그인, 회원가입 구현하기 :

https://hayeon1549.tistory.com/36

 

[Django] DRF jwt 인증방식을 이용한 로그인, 회원가입 구현하기

JWT(Json Web Token)란? JWT란 모바일이나 웹의 사용자 인증을 위해 사용하는 암호화된 토큰을 의미합니다. JWT는 클라이언트에서 Http 리퀘스트 헤더에 JSON 토큰을 넣어 보내면 서버는 헤더에 포함되어

hayeon1549.tistory.com