세로형
Recent Posts
Recent Comments
Link
04-24 04:28
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Archives
Today
Total
관리 메뉴

꿈 많은 사람의 이야기

파이썬 django로 REST API 개발하자! - 2편. django와 REST API를 이용한 게시판 개발 본문

python-django

파이썬 django로 REST API 개발하자! - 2편. django와 REST API를 이용한 게시판 개발

이수진의 블로그 2019. 7. 28. 15:51

완성된 코드는 아래 github 주소에 있습니다!

도움이 되셨다면 좋아요와 깃허브 스타를 눌러주세요! 저에게 있어 큰 힘이 됩니다 ㅠㅠhttps://github.com/lsjsj92/django_todo_app

 

 

지난번 포스팅에서 django와 REST API를 연동해서 개발을 진행해봤습니다.

 

생각보다 어렵지 않은 작업이었죠?

이제 이 작업을 기반으로 detail view를 만들어봅니다.

지난번 포스팅이 list view였다고 생각하시면 됩니다. 하지만 이번 과정에서 조금 수정을 해주겠습니다.

 

만약, REST API를 활용해 웹 개발을 하시면 이것은 기존에 웹 게시판을 개발한 것과는 다릅니다.

기존 게시판은 단순히 웹과 DB가 연동해서 진행되었지만

이제는 REST API 서버가 DB를 바라보고 웹은 REST API를 바라보게 됩니다.

즉, DB <-> REST API <-> 웹  이렇게 구성이 되는 것이죠!

 

그러면 어떻게 detail view를 만들어 줄 수 있을까요?

REST API에서 detail view, update, delete 등이 구현이 되어 있어야 웹과 연동을 할 수 있겠죠? 

 

 

 

먼저 지난번 내용과 조금 변경되는 부분이 LIST VIEW 부분입니다. 조금 수정해주겠습니다.

rest_framework에 있는 ListAPIView를 불러옵니다.

저것을 활용해서 LIST VIEW를 만들 수 있습니다.

 

 

urls.py도 기존과 다릅니다. 지난번 내용에서 작성한 부분이 주석처리가 되었고  views.as_view() 형태의 url을 추가했습니다.

list view를 이렇게 조금 수정해줍니다.

 

 

 

자! 그러면 위와 같이 잘 나오는 것을 확인할 수 있습니다.

이제 detail view를 개발해보죠

 

 

detail view는 RetrieveAPIView를 상속해주면 됩니다.

마찬가지로 rest_framework.generics에 있습니다.

 

 

또한, serializers.py도 수정해줘야겠죠?

list view에 해당하는 시리얼라이저만 있으니 detail용 serializer를 추가해줍니다.

model과 fields를 통해 값을 설정!

 

 

url도 그에 맞게 추가해줍니다!

그러면!

 

짠!

이렇게 상세보기가 가능합니다.

 

다음 포스팅에서는 update view와 delete view를 하겠습니다.

 

그러면 REST API의 CRUD에서 C(Create)를 제외한 모든 것이 구현이 될 것입니다.

반응형
그리드형
Comments