[Django] Rest API #2_1

장서영·2022년 8월 24일

Django

목록 보기
3/16
post-thumbnail

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가 보이는 게,,뭐 무슨 의미지? 개발자들끼리의 약속이라서,,? 이게 뭐 어떻게 쓰인다는 거지?
profile
하루살이 개발자

0개의 댓글