이 포스트는 인프런의 "Django REST Framework 핵심사항"강의를 듣고 제작하였습니다.
DRF는 REST API의 설계를 따르기 때문에 DRF를 활용하여 개발을 할 때 그 규칙을 따르는 것이 좋다.
app이름/table이름/
app이름/table이름/pk/
* 이때 pk는 각 테이블의 하나의 row가 된다.
이렇게 설계할 경우 테이블의 갯수가 많을 때도 일관되게 URI
를 설계할 수 있다.
또한 Resource
, 즉 테이블에 대한 CRUD operation
에 대해서는 URI
를 통해서 받는 것이 아닌 클라이언트
에서 HTTP메소드
로 요청을 받게된다.
여기서 눈여겨봐야 할 점이 REST
의 방식으로 설계를 할 때는 끝에 /
를 붙이지 않지만 장고에서는 끝에 /
를 붙이는 것이 권장사항이다.
따라서 DRF
에서는 URI
의 끝에 /
를 붙여서 사용해야된다.
path('post/<int:pk>/', views.PostDetailTV.as_view(), name='post_detail')
필요에 따라서 아래와 같이 settings.py
에 APPEND_SLASH = False
지정하면 자유롭게 URI
를 설계할 수 있다.
#config > settings.py
APPEND_SLASH = False
장고의 URL접근방식
에 대해서 자세히 알고 싶다면 이 글을 참고하자.