목록남기면 좋잖아 (55)
남기면 좋잖아
DRF-React Study Chapter 8. 장고 DRF를 활용한 웹 API 만들기 Renderer를 통한 다양한 응답 포맷 지원 Renderer 같은 Endpoint에서 요청받은 타입에 맞춰, 다양한 응답 포맷을 지원 Content-Type, URL의 방법을 통해 Renderer 지정 가능 기본 지원 Renderer JSONRenderer : json.dumps를 통한 JSON 직렬화 디폴트 media_type : application/json format : json BrowsableAPIRenderer : self-document HTML 렌더링 디폴트 media_type : text/html format : api TemplateHTMLRenderer : 지정 템플릿을 통한 렌더링 media_..
DRF-React Study Chapter 8. 장고 DRF를 활용한 웹 API 만들기 mixins 상속을 통한 APIView DRF에서 지원하는 mixins CreateModelMixin ListModelMixin RetrieveModelMixin UpdateModelMixin DestroyModelMixin 다양한 View의 구현 방법 중복을 줄이기 상황에 맞춰 다양한 방법으로 View를 구현 생산성 극대화 ViewSet과 Router 단일 리소스에서 관련있는 View들을 단일 클래스에서 제공 2개의 URL이 필요 Post 리소스에 대한 2개의 URL ModelViewSet viewsets.ReadOnlyModelViewSet list 지원 : 1개의 URL detail 지원 : 1개의 URL vie..
DRF-React Study Chapter 8. 장고 DRF를 활용한 웹 API 만들기 API 서버와 REST API 서버 앱/웹 서비스를 만드는 개발자들이 이용하는 데이터 위주의 서비스 시간이 지나도 호환성을 유지해야 함 앱 등의 유저가 사용하는 UI는 유저가 원할 때 업데이트가 됨 유저층이 사용하는 앱의 버전이 다양하기에 API에도 버전 개념을 둠 /api/v1/posts, /api/v2/posts 그에 반해, 웹 서비스를 이용하는 유저는 항상 최신버전을 사용 REST(Representational State Transfer) 아키텍처 스타일. 프로토콜에 독립적 -> 일반적인 REST 구현에서 HTTP를 사용 RESTful API의 몇가지 디자인 원칙 리소스를 중심으로 디자인 클라이언트에서 엑세스할 ..
DRF-React Study Chapter 7. 비SPA 방식으로 인스타그램 St 만들기 Overview 만들 내용 회원가입 로그인 프로필 수정 및 암호 수정 포스팅 쓰기 구현 (사진 및 caption, 다수 태그, location 등록) 이미지 필터는 리액터 챕터에서 유저 페이지 구현 타임라인 Follow 구현, Following 하는 유저들의 포스팅 목록 모든 것을 SPA로 구현하려 하지말자 한정된 시간과 리소스 인스타그램 St. 만들기 웹 프론트엔드 기본 기술 HTML/CSS/JavaScript jQuery 프론트엔드의 호환성 유틸리티 라이브러리. 서버와의 Ajax요청과 간단한 DOM 처리를 위해 사용 Bootstrap4 GIT : https://github.com/Dokeey/drf-react
DRF-React Study Chapter 6. 장고 기본 인증 구현하기 로그인 처리 장고 기본 제공기능 사용하기 from django.contrib.auth.views import LoginView from django.urls import path urlpatterns = [ path('login/', LoginView.as_view(template_name='accounts/login_form.html'), name='login'), ] ```사용자 프로필 페이지 및 프로필 수정 accounts/views.py from django.contrib.auth.decorators import login_required from django.contrib.auth..
DRF-React Study Chapter 5. 장고 Forms Messages Framework Messages Framework 현재 User를 위한 1회성 메세지 HttpRequest 인스턴스를 통해 메시지를 남김 View 에서만 사용 가능 JS로도 사용가능 레벨 DEBUG INFO SUCCESS WARNING ERROR 출력 tags 변경하기 settings.py from django.contrib.messages import constants MESSAGE_TAGS = { constants.DEBUG: 'secondary', constants.ERROR: 'danger', } Messages 소모하기 layout.html {% if messages %} {% for ..
DRF-React Study Chapter 5. 장고 Forms HTML Form 언제 쓰는가 HTML Form(클라이언트 측) 클라이언트에서 입력폼을 제공하고 이를 서버로 전송하고자 할때 Djnago Form(서버 측) 받은 값의 유효성 검사 수행 / 데이터베이스에 저장하는 등의 처리 (POST요청) HTML Form을 생성하는 기능(GET 요청) HTML Form form 태그를 통해 입력폼 구성 submit 시에 지정 action URL로 데이터 전송 시도 Form 태그 필수 속성 action : 요청을 보낼 주소 method : 전송 방식 GET, POST enctype : 인코딩 방식 POST 요청에만 유효 GET 요청에서는 하나의 방식만 강제됨 form의 enctype "apllication/..
DRF-React Study Chapter 4. 웹 프론트엔드 기초 및 장고 static JavaScript와 jQuery Ajax GET/POST 요청 브라우저의 동일 도메인 참조 정책(Same-Origin Policy) 여러 도메인에 걸쳐서 구성되는 웹서비스가 늘어나는 시점에서 Cross Domain Request를 허용하기위해 CORS 지원 Django 뷰에서는 POST를 받을때 CSRF Token 값을 체크 여러 도메인에 대하 요청을 허용하고 싶으면 CORS 설정을 추가 Access-Control-Allow-Origin 타 사이트의 자원을 가져오고 싶다면 dataType: 'jsonp' 장고가 Static 파일을 다루는 방법 장고 static 파일 경로 장고는 One Project,..