본문 바로가기

Django

django rest framework에 대해서

django 방식의 API

DRF(Django Rest Framework)의 흐름에 대해서 보면 url의 경로를 따라 view에서 로직이 진행이 되는걸 확인 할 수 있다.

django install

pip install djangorestframwork 를 터미널에서 입력하고 설치한다.

설치가 다 되었으면 설치된 애플리케이션 안에 REST Framework를 설치해준다.

# settings.py
INSTALLED_APPS = [
  ...
  'rest_framework',
]

config/urls.py

from django.urls import path, include

urlpatterns = [
  ...
  paht("api/v1/users/", include('users.urls')),
]

여기서 볼 부분은 url 관리법인데 url을 다룰 방법은 많이 있지만 여기서는 version으로 다루는 법을 알아보는 시간을 가질거다.

위 코드를 보면 api/v1 이라고 되어있는데 이 부분이 api/v2 가 될 수도 있는 부분이다.

그럼 왜 나눌까라는 생각을 한번은 해볼꺼다.

API 버전 관리를 통해 연결된 client가 있다고 하자. 그런데 다른 client에서도 연결을 하려고하는데 각각의 client의 동작이 다를 수 있을것이다. 이때 version을 나누면서 server에서는 각 client마다 다른 로직을 구성해 줄 수 있다. (일단 간단하게 이정도만 알고 있자)

version에 대해서 한가지만 더 말하자면 위의 urls.py가 v1 코드라고 하면 v2도 여기에서 관리해야하나?

물론 그럴수도 있겠지만, file을 나눠주는것이 가독성이 더 편할것이다. 예를 들어 나눈다면 상위폴더는 users 고 urls.py와 같은 위치에서 urls_v2.py 이정도로 생성해줄 수 있다. 물론 생성하는건 작성자 마음이다.

'Django' 카테고리의 다른 글

DRF serializer  (0) 2021.06.19
DRF 함수형 뷰 (@api_view)  (0) 2021.06.19
(django template) typescript 적용시키기  (0) 2021.03.13
django settings.py 분리 시키기  (0) 2020.11.15
Django 구조  (0) 2020.10.11