본문 바로가기

AI34

[3주차-3] 장고를 활용한 API서버 만들기 - HTTP Methods 기반의 views HTTP Methods - request의 method 기반의 뷰 [참고 웹사이트] https://developer.mozilla.org/ko/docs/Web/HTTP/Methods CRUD 기능을 구현하는 HTTP 메서드는 다음과 같다. 1) 데이터 생성(Create) : POST POST 메서드는 특정 리소스에 엔티티를 제출할 때 쓰입니다. 이는 종종 서버의 상태의 변화나 부작용을 일으킵니다. 쉽게 말해 무언가 새로운 데이터를 만들 때 사용한다. 2) 데이터 조회(Read) : GET GET 메서드는 특정 리소스의 표시를 요청합니다. GET을 사용하는 요청은 오직 데이터를 받기만 합니다. 3) 데이터 업데이트(Update) : PUT PUT 메서드는 목적 리소스 모든 현재 표시를 요청 payload로.. 2023. 4. 29.
[3주차-3] 장고를 활용한 API서버 만들기 - Serialize Serialize 모델 인스턴스나 QuerySet과 같은 데이터를 JSON 형식의 파일로 변환하는 작업 Deserialize JSON 형식의 데이터를 정의된 포맷에 맞추어 다시 모델 인스턴스로 변환하는 작업 다음은 Serializer에 대해 친절하게 설명해주신 블로그의 글이다(감사합니다!). https://velog.io/@kjyeon1101/DRF-Serializer%EA%B0%80-%EB%AD%98%EA%B9%8C [DRF] Serializer가 뭘까 아직도 대체 Serializer가 뭘 하는 놈인지 잘 모르겠다. 누가 물어보면 "어..... 직렬화?"라고 밖에 못할 수준.. 장고의 form이랑 비슷하다는데 실컷 직렬화 어쩌고 저쩌고 하다가 갑자기 폼이 왜 나오 velog.io 그럼 serialize.. 2023. 4. 29.
[3주차-2] 장고를 활용한 API서버 만들기 - 에러 처리하기, 커스터마이징 하기 에러 처리하기 404에러 처리하기 polls/views.py에서 from models.py import * from django.http import HttpResponse from django.http import Http404 from django.shortcuts import render , get_object_or_404 #장고에서 기본 제공되는 에러 처리 툴 ... def detail(request, question_id): """ try: question = Question.objects.get(pk=question_id) except Question.DoesNotExist: raise Http404("Question does not exist") """ #위의 4줄이 다음 코드 한줄로 대체 .. 2023. 4. 29.
[3주차-2] 장고를 활용한 API서버 만들기 - view 다루기 view polls/views.py에서 from .models import * from django.shortcuts import render def index(request): latest_question_list = Question.objects.order_by('-pub_date')[:5] #날짜 순으로 최신 5개 질문 리스트 context = {'first_question': latest_question_list[0]} #첫번째 질문 딕셔너리 return render(request, 'polls/index.html', context) #render는 html파일을 그려주는 역할 polls/templates/polls/index.html에서 참고) html에서 변수를 인식하려면 {{변수}}꼴이어야 .. 2023. 4. 29.