EP 03 - JSON 응답뷰 만들기 (부제 - APIView부터 ViewSet까지)Tip: render= parser=>구조화된 객체로 만들어줌
장고에서는 뷰를 통해 HTTP요청을 처리합니다.
장고의 기본 함수기반뷰/클래스기반뷰를 활용하셔도 API를 충분히 만드실 수 있습니다. 하지만 rest_framework를 쓰신다면, APIView/ViewSet을 활용하시면, API뷰를 보다 적은 양의 코드로 효율적으로 작성하실 수 있습니다.
그에 앞서 장고 기본 뷰에서의 Serializer 활용코드를 먼저 살펴보겠습니다.
Ser...
JSON 직렬화모든 프로그래밍 언어의 통신에서 데이터는 필히 문자열로 표현되어야만 합니다.
(즉 현재 프로그램 밖으로 뭔가 보내야할때 문자열로 해야하므로 직렬화 필요
반대로 프로그램 밖에서 데이터가져오면 비직렬화 과정 꼭 필요)
송신자 : 객체를 문자열로 변환하여, 데이터 전송 => 이를 직렬화 (Serialization) 라고 합니다. (api의 클라이언트)
수신자 : 수신한 문자열을 다시 객체로 변환하여, 활용 => 이를 비직렬화 혹은 역직렬화 (Deserialization) 라고 합니다. (api 서버)
...
API 기초API 서버 만들기
API 서버란?앱/웹 서비스를 만드는 개발자들이 이용하는 데이터 위주의서비스
시간이 지나도 호환성 유지를 위해 API버전 개념을 둔다
API는 즉 REST API?? NO!!!!!!!!!!!REST API라고 부르는 것들은 단순히 HTTP프로토콜을 통한 API, 즉 HTTP API라고 부르는게 맞음
대부분의 REST API라는 API들은 REST 아키텍처 스타일
우리는 이번 코스를 통해…
설계의 영역에 대해 다루지 않음
널리 쓰여지는 django rest freamework에 대해서 자세히 익혀보...
Ajax with Django #4이미지 썸네일 처리큰 이미지를 CSS로 이미지 크기만 줄이는 것은 도움이 되지 않습니다.실제 서버에서 다운받을 때부터 적절히 조절하는 것이 좋습니다.
이미지 업로드 받을 때 미리 조절해서 한 버전 혹은 여러 버전으로 저장 해두거나
이미지를 서빙받을 때 동적으로 조절해서 내려주거나
Image Libraries
sorl-thumbnail
easy-thumbnails
1234pip3 install easy-thumbnailssettings.py 에 easy_thumbnails 추가python3...
Ajax with Django #3코드 구현
STEP #1) Detail 페이지에서 댓글 쓰기
STEP #2) validation 에러가 발생한다면?
STEP #3) Post Detail 댓글창에 Ajax 숨결을 ~
STEP #4) Bootstrap4 Modal을 통한 댓글 쓰기
STEP #5) Bootstrap4 Modal을 통한 댓글 수정
STEP #6) MEDIA 프로젝트 셋팅
STEP #7) 댓글 Ajax 파일 업로드
STEP #8) 댓글 목록에 이미지를 노출시켜봅시다
댓글 Ajax 쓰기STEP #1) Detail 페...
장고에서의 STATIC 파일 관리참고 VOD 요약[장고 기본편] “Static Files - CSS/JavaScript 파일을 어떻게 관리해야 할까요?” VOD 링크
장고는 One Project, Multi App 구조
한 App을 위한 static 파일을 app/static/app경로에 두세요.
프로젝트 전반적으로 사용되는 static 파일을 settings.STATICFILES_DIRS에서 참조 하는 경로에 두세요.
12345# myproj/settings.pySTATIC_URL = '...
콘퍼런스
Devground Junior 2019
<이력서 준비: 꿀팁으로 검색>
개발자가 갖추어야 할 9가지 기술 -박종천 삼성전자유투브 보기
각 프로젝트에 책들보기
설득할떄 3가지 중요요소 <메세지, 형태(어떤식으로 말을 전달), 말을 하는 사람 (화자의현위치)>
프로필
아래한글에서 처음시작, 6년일을 함, 보스턴 스타트업, 블리자드>넥슨>삼성전자
Basic Knowledge(C++, OS)
Understanding for product
Development Cycle
developm...
강의 시작 전필요한 기능
blog앱
Post모델의 list/detail/edit/delete
Comment 모델의 list/edit/delete
코멘트에 post_id를 선택하는것이 아니라 그것은 자동지정해주고 댓글만 폼에서 받아내는것이므로 아래 코드 참고하자
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748# views.pydef index(request): return render(request, ...
Generic Display CBV 뷰Built-in CBV API
Generic Display Views
ListView, DetailView
Generic Date Views
ArchiveIndexView, YearArchiveView, MonthArchiveView, WeekArchiveView, DayArchiveView, TodayArchiveView, DateDetailView
Generic Editing Views
FormView, CreateView, UpdateView, DeleteView
...
overviewView?
뷰의 정체는 호출가능한 객체 (Callable Object)
첫번째 인자로 HttpRequest 인스턴스를 받고,
리턴값으로 HttpResponse 인스턴스를 리턴해야하는 의무
12345678# myapp/views.pydef about(request): #여기 request가 HttpRequest인스턴스 return HttpResponse('안녕하세요. AskDjango입니다.') #여기가 httpResponse인스턴스# myapp/urls.pyfrom...