- distinct
- Article & User
- 스택
- 쟝고
- 큐
- stack
- M:N
- Django
- 뷰
- count
- delete
- Tree
- 이진트리
- 그리디
- Queue
- ORM
- update
- regexp
- outer join
- 통계학
- migrations
- 트리
- Vue
- drf
- 완전검색
- N:1
- 백트래킹
- create
- SQL
- DB
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
목록2024/05 (31)
데이터 분석 기술 블로그

POST단일 댓글 생성을 위한 url 및 view 함수 작성# articles/urls.pyurlpatterns = [ ..., path('articles//commments/', views.comment_create),]serializer 인스턴스의 save() 메서드는 특정 Serialzier 인스턴스를 저장하는 과정에서 추가 데이터를 받을 수 있음# articles/views.py@api_view(['POST'])def comment_create(request, article_pk): article = Article.objects.get(pk=article_pk) serializer = CommentSerializer(data=request.data) if serializ..

1. 사전 준비1-1. Comment 모델 정의Comment 클래스 정의 및 데이터 베이스 초기화# articles/models.pyclass Comment(models.Model): artilce = models.ForeignKey(Article, on_delete=models.CASCADE content = models.TextField() created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True)Migration 및 fixtures 데이터 로드$ python manage.py makemigrations$ python manage.py migrate$ pyt..

1. DELETE게시글 데이터 삭제하기요청에 대한 데이터 삭제가 성공했을 경우는 204 No Content 응답# articles/views.py@api_view(['GET', 'DELETE'])def article_detail(request, article_pk): article = Article.objects.get(pk=article_pk) if request.method == 'GET': serializer = ArticleSerializer(article) return Response(serializer.data) elif request.method == 'DELETE': article.delete() return ..

POST게시글 데이터 생성하기데이터 생성이 성공했을 경우 201 Created를 응답데이터 생성이 실패했을 경우 400 Bad request를 응답article_list view 함수 구조 변경 (method에 따른 분기처리)# articles/views.pyfrom rest_framework import status@api_view(['GET', 'POST'])def article_list(request): if request.method == 'GET': articles = Article.objects.all() serializer = ArticleListSerializer(articles, many=True) return Response(serializer..

1. GET1-1. GET - List게시글 데이터 목록 조회하기게시글 데이터 목록을 제공하는 ArticleListSerializer 정의serializers.py의 위치나 파일명은 자유롭게 작성 가능합니다.# articles/serializers.pyfrom rest_framework import serializersfrom .models import Articleclass ArticleListSerializer(serializers.ModelSerializer): class Meta: model = Article fields = ('id', 'title', 'content',)ModelSerialzier은 Django 모델과 연결된 Serializer 클래스입니다.url..

프로젝트 준비사전 제공된 drf 프로젝트 기반 시작가상 환경 생성, 활성화 및 패키지 설치migrate 진행 : $ python manage.py migrate준비된 fixtures 파일을 load 하여 실습용 초기 데이터 입력 : $ python manage.py loaddata articles.json

Django REST framework - DRFDjango에서 Restful API 서버를 쉽게 구축할 수 있도록 도와주는 오픈소스 라이브러리입니다.Serialization - "직렬화"여러 시스템에서 활용하기 위해 데이터 구조나 객체 상태를 재구성할 수 있는 포맷으로 변환하는 과정입니다.어떠한 언어나 환경에서도 나중에 다시 쉽게 사용할 수 있는 포맷으로 변환하는 과정입니다.Serialization 예시

그동안 서버가 응답(자원을 표현)했던 것은지금까지 Django 서버는 사용자에게 페이지(html)만 응답하고 있었습니다.하지만 서버가 응답할 수 있는 것은 페이지뿐만 아니라 다양한 데이터 타입을 응답할 수 있습니다.REST API는 이 중에서도 JSON 타입으로 응답하는 것을 권장합니다.응답 데이터 타입의 변화사전 준비사전 제공된 99-json-response-practice 기반 시작가상 환경 생성, 활성화 및 패키지 설치migrate 진행 : $ python manage.py migrate준비된 fixtures 파일을 load하여 실습용 초기 데이터 입력 : $ python manage.py loaddata articles.jsonhttp://127.0.1:8000/api/v1/articles/ 요청..