pip
python install package의 약자로 소프트웨어가 모여있는 큰 덩어리에서 내가 필요한 소프트웨어를 내 로컬에 설치하고싶을때 사용하는 명령어
python -m pip install --upgrade pip
pip툴을 업그레이드하는 명령어
pip --version
현재 내가 사용하는 pip툴의 버전을 확인, 현재 내가사용하고있는 파이썬의 버전도 확인가능
pip install Django
Django를 설치하는 명령어
pip install Django --upgrade
최신버전으로 Django 업그레이드
python -c "import django; print(django.__path__)"
Django 설치경로 확인
django-admin startproject 프로젝트이름
설치하고자하는 폴더에 프로젝트를 만드는 명령어예를들어 django2를 프로젝트이름으로 했다면 django2에들어가면 django2폴더와 manage.py가 생성되어있는걸 확인할수있고 django2 폴더내에는 __init__.py, asgi.py, settings.py, urls.py, wsgi.py 파일등이 생성되어 있는것을 확인할수 있다.
프로젝트와 어플리케이션이란?
예를들어 쇼핑몰사이트를 만들었으면 쇼핑몰사이트내에는 게시판도 있고, 결제하는 기능도 있고, 장바구니 기능도 있고 등등 여러가지 기능이 있을것이다. 이 전체를 아우르는것을 프로젝트라고 하고 저 하나하나의 기능들을 어플리케이션이라고 한다.
어플리케이션을 생성하는 법
python manage.py startapp 어플리케이션이름예를들어 python manage.py startapp king을 입력했으면 manage.py를 이용하여 king이라는 이름의 어플리케이션을 만든다는 뜻이다.
MVT 패턴
클라이언트에서 뷰에 request를 한다.
view에서 이것이 데이터베이스와 관련된 작업인지 판단하고 데이터베이스와 관련된 작업이라고 판단했을때 model로 위임을 한다. 그러면 데이터베이스에서 어떠한 작업을 해서 model에게 데이터를 준다.
그러면 model은 이 데이터를 다시 view에 준다
view는 데이터베이스에서 가져온 데이터를 가지고 작업을 할것이 있으면 작업을 하고 작업이 완료되면 템플릿과 통신하여 템플릿내의 여러가지문서중에서 여기서 클라이언트에 응답하기 가장 적합한 템플릿하나를 가져와서 클라이언트에게 response한다.
models.py와 views.py
생성한 어플리케이션을 들어가면 models.py와 views.py가 보이는데 이 파일들이 위에서 말한 view와 model이다.
위 과정대로 view에서 model로 요청을 보내고 model이 데이터베이스에서 데이터를 받아 작업을 한다(Django는 기본적으로 SQLite라는 경량화된 데이터베이스를 가지고있다.)
템플릿파일은 없는데 템플릿은 사용자가 경로를 따로 만들어서 HTML등을 만들어 사용한다.
settings.py와 urls.py
생성한 프로젝트폴더에 내부에들어가면 생성한 프로젝트폴더와 같은이름의 폴더가 하나
더 있다.
그 폴더 내부의 파일 중
settings.py는 이 프로젝트를 전체적으로 세팅하는 파일
urls.py는 어떤 사용자가 url로 서버에 접속하면 그 url을 맵핑을하는 작업 즉, 클라이언트가 어떤 뷰를 찾아가라 이런 요청이 들어오면 그 중간에서 브릿지 역할을 해주는 역할을해준다.