DRF 챌린지 시작이당
참고한 강의 자료는 아래와 같다.
개복치개발자 1-2

일단, 한 번 따라서 만들어 봤다.
GitHub : DRF_firstPractice
오늘의 공부 : django 프로젝트 생성하기
- django-admin을 통한 프로젝트 및 앱(student) 생성
- django 모델 정의 + 관리자 페이지 등록
▶ “Rest API를 통해 StudentList를 불러오고(GET), student를 추가하는 것(POST)를 배움”
💡 학습 정리 + 새롭게 알게 된 것
▶ DB 세팅하기
- 프로젝트, 앱 생성 → 기본 설정 완료
- models.py 작성
- Student 클래스 등록
- makemigrations, migrate
- admin.py 작성
- admin 페이지에서 Student 데이터들이 보여질 수 있도록 등록
- createsuperuser로 관리자 계정 생성
▶ (시작) API 만들기 : StudentList - GET, POST
- pip install djangorestframework
패키지 설치 없이 진행하면..? : 웹 API를 구축하기 위한 강력하고 유연한 툴킷
- settings.py에 등록
- serializers.py 생성 + 작성 Serializer
- api.py 생성 + 작성
api.py 왜 만드는가? : REST API의 get post put delete같은 기능들을 정의 (말 그대로 api를 만드는 것)
import APIView?
- APIView : Class-bsaed views (DRF에
- Handler 메소드는 HTTPResponse가 아닌 REST framework의 Response를 리턴함

- **model = Student 와 Student.objects.all()의 차이?**

- urls.py에 등록 → 서버에서 DRF 확인 가능
.as_view()
unique=True : 해당 필드의 값이 겹치지 않게 해 준다.

❓ 아직 모르겠는 것
간단한 내용이당. 읎당.
👍 추가로 찾아본 것
Rest API란 개념이 아직까지는 모호해서, 이론 위주로 찾아봤다.
- REST : '웹(HTTP)의 장점을 최대한 활용할 수 있는 아키텍처'
- REST API 구성 : 자원(URI) + 행위(HTTP 메소드) + 표현
- REST API 설계 2 원칙
1) URI는 정보의 자원을 표현해야 한다.
2) 자원에 대한 행위는 HTTP 메소드(GET, POST, PUT, DELETE)로 표현한다.
※ POST(생성), GET(조회), PUT(수정), DELETE(삭제)를 가지고 CRUD를 할 수 있다.
▲ 출처 : REST API 제대로 알고 사용하기
📢 나중에 더 찾아볼 것 (미해결)
- DRF에서 rest api가 보이는 게,,뭐 무슨 의미지? 개발자들끼리의 약속이라서,,? 이게 뭐 어떻게 쓰인다는 거지?