django + riot api를 이용해서 lol 전적검색 사이트를 만드는 과정을 담았다
python의 오픈 소스 웹 프레임워크이자 풀 스택 프레임 워크이다
높은 생산성을 가지며 스타트업에서 많이 쓰인다
장고로 제작된 대표적인 사이트는 인스타크램
, 핀터레스트
등이 있다
django는 여러가지 기능을 제공한다
MTV패턴을 사용한다
mtc 패턴과 동일하다
Model : DB에 데이터를 저장되는 데이터
Template : 사용자에게 보여지는 부분(html)
View : 데이터를 처리하고 결과를 템플릿에 전달하는 역할을 한다
ORM기능을 지원한다
객체를 sql문으로 변환하여 데이터를 넣어주는 기능이다
코드의 변경사항을 자동으로 반영한다
저장할때마다 새로 reload를 해준다
python 가상환경에서 장고를 설치한다
가상환경을 사용하는 이유는 프로젝트별로 패키지 버전을 독립적으로 관리하기 위해서다
wsl설치, python이 되어있다는 가정하에 시작한다
sudo apt install python3-pip
# pip설치
sudo apt install python3-venv
# 가상환경 생성하는 venv를 설치한다
python3 -m venv '가상환경이름'
source 가상환경이름/Scripts/activate
# 가상환경 활성화
정상적으로 가상환경에 들어오게되면 가상환경명이 cmd창에 나타나게 된다
만약 가상 환경을 나가고 싶다면
deactivate
를 입력하면된다
다음 가상환경 내에서 django 설치를 진행한다
pip install django=={장고 버전}
django-admin --version
정상적으로 설치가 되었으면 장고의 버전이 출력될것이다
그 다음 장고 프로젝트를 만들어준다
django-admin startproject [프로젝트 이름]
정상적으로 프로젝트가 시작되면 다음과 같은 폴더가 만들어진다
manage.py
: django 프로젝트의 서버를 실행하거나 db를 관리하는등 여러가지 핵심기능들을 담당한다
__init__.py
: 파이썬 패키지를 알리는것
settings.py
: 프로젝트 기본 설정 포함
urls.py
: url요청에 대한 페이지 연결
wsgi.py
: 웹서버와 django 소통 프로토콜