목록Programming (31)
남기면 좋잖아
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,..
DRF-React Study Chapter 3. 장고 Views 장고 기본 CBV API (Base Views) Base Views django/views/generic/base.py View TemplateView TemplateResponseMixin ContextMixin RedirectView View 모든 CBV의 모체 http method별로 지정 이름의 멤버함수를 호출토록 구현 get, post CBV.as_view(**initkwargs) RedirectView permanent (디폴트 False) True : 301 응답(영구적인 이동) - 검색엔진에 영향 False : 302 (임시이동) url = None URL 문자열 pattern_name URL Reverse를 수행할 문자열 q..
DRF-React Study Chapter 3. 장고 Views 다양한 응답의 함수 기반 뷰(1) View 1개의 HTTP 요청에 대해 > 1개의 뷰가 호출 urls.py/urlpatterns 리스트에 매핑된 호출 가능한 객체 웹 클라이언트로부터의 HTTP 요청을 처리 크게 2가지 형태의 뷰 FBV CBV View 호출시, 인자 1번쨰 인자 : HttpRequest 객체 현재 요청에 대한 모든 내역을 담고 있음 2번째 인자 : 현재 요청의 URL로부터 capture된 문자열들 path를 통한 처리 > 매핑된 Converter의 to_python에 맞게 변환된 값이 인자로 전달 View 호출에 대한 리턴값 필히 HttpResponse 객체 미들웨어에서는 뷰에서 HttpResponse 객체를 리턴하기를 기대..