Django 16

[django/drf]Djang Rest Framwork 공식문서 튜토리얼3 (Class-based Views)

함수 기반 views 대신에, 클래스 기반 views로 만들 수 있다. 클래스 기반은 공통 기능을 다시 사용할 수 있는 강력한 패턴이다. 그리고 우리의 코드를 다시 사용하지 않게 도와준다. ✅ 현재 함수 Views => 클래스 Views 바꾸기 #snippets/views.py from snippets.models import Snippet from snippets.serializers import SnippetSerializer from django.http import Http404 from rest_framework.views import APIView from rest_framework.response import Response from rest_framework import status # 클..

Django 2022.07.12

[django/drf]Djang Rest Framwork 공식문서 튜토리얼2 (Requests and responses)

request와 response, status를 보내는 것이 아닌, rest_framework에서 지원하는 방식으로 status를 보낸다. 응답의 의미를 명확하게 전달할 수 있다는 장점이 있다. REST프레임 워크의 필수 구성 요소들 ✅Request object Request object의 핵심 기능은 request.POST와 비슷한 request.data 속성이다. Web API에서 훨씬 더 유용하다. request.POST # form data(html의 form)에서만 다룰 수 있다. 그리고 POST 메소드에서만 작동한다. request.data # 임의 데이터를 다룰 수 있다. POST, PUT, PATCH 메소드에서 작동한다. ✅Response object Response object는 Temp..

Django 2022.07.12

[django/drf]Djang Rest Framwork 공식문서 튜토리얼1(Serialization)

1. 가상 환경 세팅 python -m venv drftest drftest 폴더 > Script > activate cd drftest cd Script activate # 가상환경 실행 2. django와 django rest framework 설치 pip install django pip install djangorestframework pip install pygments # code 하이라이트를 위해서 사용할것 나는 가상환경과 project 보관하는 곳이 달라 프로젝트 저장하는 폴더로 따로 이동한 후 tutorial이라는 프로젝트를 만듦 cd .. cd training django-admin startproject tutorial # 튜토리얼 프로젝트 만들기 cd tutorial # 튜토리얼 프..

Django 2022.07.11

[Redis/Memcached]Cache 란? django settings.py에 Cache 설정하는 법(Redis 영업 글)

사족 더보기 프로젝트를 진행하면서 redis와 django ORM에 대해 공부하였었다. 공부하면서 든 의문 중에 하나가 DB에서 가져온 데이터를 캐시에 저장하여 다시 쓴다는 말을 들었었다. 캐시에 대한 의문이 생겼고 그렇게 저장한 캐시를 어디에 저장해 놓고 서버 접근하지 않고 캐시에서 바로 빼오는 것을 아는 건가 하는 의문이 생겨서 공부하고 조사해서 정리해놓은 글이다. 우선 하드웨어에서 cache를 어떤식으로 사용하는지 알아보자 Cache Memory 란? 하드디스크와 CPU간의 데이터 속도 향상을 위한 중간 버퍼 역할을 하는 CPU 내, 외에 존재하는 메모리 CPU는 빠르게 일을 진행하고 있는데, 메모리에서 데이터를 가져오는 게 느려 중간에 미리 CPU에 전달될 데이터를 들고 서있는 형태 전체 시스템의..

Django 2022.05.27

[django]WSGI 란?(CGI, WSGI,AWGI)

WSGI를 도입하면서 정확이 이게 무엇이고 어떻게 작동하는지를 모르고 사용만 했다. python 공식문서에 설명이 되어있는 것을 봐도 너무 어려웠다. 이것저것 알아보고 공부한 것을 정리해보겠다. WSGI는 번역기 WSGI란? 웹서버와 프레임워크(django), 애플리케이션을 연결해주는 Python의 표준 API WSGI는 서버와 게이트웨이,애플리케이션과 프레임워크 양단으로 나뉘어 있다. 웹서버는 Python코드를 읽을 수 없고, 굳이 불필요한 코드를 전송해서 비용을 증가시킬 이유가 없다. WSGI는 서버에서는 애플리케이션으로 대하고, 애플리케이션에서는 서버처럼 행동한다. 웹서버와 웹 애플리케이션의 소통을 도와주는 번역기와 같은 역할을 하는 API WSGI 작동방식 1. WSGI와 Web Server Ca..

Django 2022.05.24

[django]Django 소개 및 장단점

Djanog란? Django는 파이썬으로 제작된 오픈소스 웹 프레임워크 대표적인 사이트는 인스타그램, 핀터레스트, 딜리버리 히어로 코리아, 화해(버드뷰), SendBird(채팅 API) Djanog의 특징 MTV 패턴 View는 Template, Controller는 View라고 표현 Model은 DB에 저장되는 데이터 Template는 유저에게 보여지는 UI View는 데이터를 처리하고 Template에 데이터를 전달 2. 강력한 ORM기능 ORM(객체 관계 매핑)은 객체와 관계형 DB를 연결해주는 개념 생성한 클래스(객체)를 SQL문으로 자동 변환하여 데이터를 다룸 SQL을 사용하지 않고도 DB데이터를 관리 관계형 DB를 객체처럼 볼 수 있게 해준다. 이는 개발자가 로직 작성에 집중하도록 도움 3. ..

Django 2022.05.24

[AWS/nginx/react/Gunicorn/django]신입 개발자의 django 프로젝트 배포 삽질_2(해결)

두번째 아키텍처 정말ㅜ 눈물난다,,,배포란 이런것인가,,,, 인스턴스는 1개 WSGI(gunicorn) 도입 1. Mixed Content 문제 발생 Mixed Content: The page at 'https://도메인/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://도메인/'. This request has been blocked; the content must be served over HTTPS. - Mixed content는 request가 https인데 end point는 http라 브라우저에서 막는 것이다. - 우리는 nginx에만 SSL을 적용하였다. - nginx에서 react로 https..

Django 2022.05.18

[AWS/nginx/react/Gunicorn/django]신입 개발자의 django 프로젝트 배포 삽질_1

아래 사진을 만들어준 동기 PJW님께 감사의 말씀 전해 드립니다. 우리의 현상태,,,,,,도라버렸따,,,, 우리는 현재 회사에서 첫 django로 온보딩 프로젝트를 진행하고 있고 배포 과정(삽질 매우 다수,,,)을 한번 정리해보려고한다. 이것은 해결방법이 아니다. 우리가 해온 삽질이다. 이글을 보고 다른 사람들이 우리처럼 삽질하지 않기를 바라며 작성하는 글이다. 아직도 삽질중,,,,, 첫번째 아키텍처 정말ㅜ 눈물난다,,,배포란 이런것인가,,,, 위의 그림처럼 front와 back을 분리하여 설계하였더니 발생한 문제 1. 쿠키에 sessionID를 담기 위해 Same Site Cookies 옵션 https://www.certkorea.co.kr/bbs/board.php?bo_table=31&wr_id=42..

Django 2022.05.18

[django/ubuntu] letsencrypt nginx에 인증서 적용하기

django와 react를 연결할때 자꾸 cors에러가 발생하였다. cors관련 에러는 이전 글에도 존재하지만 setting 쪽에서 해줄 수 있는 조치는 다 해주었고 결국 발생하는 이유가 SSL인증서 때문인거 같아서 SSL 인증서 발급하여 nginx에 실어주려고 한다. SSL 인증서란? Secure Socket Layer -보안 인증서 SSL은 전송계층과 응용계층 사이에서 동작한다. letsencrypt SSL을 발급하는 기관으로 최상위 발급기관 중 하나 점유율이 매우 낮지만, 발급 절차가 간단하고 무료라 해보려고 한다. 설치하기 전에 패키지들을 update, upgrade 시켜준다. sudo apt-get update sudo apt-get upgrade 서버에 Certbot 설치 sudo apt in..

Django 2022.05.09
반응형