-
Django란?
* python으로 작성된 오픈 소스 웹 어플리케이션 프레임워크
* 인스타, 핀터레스트는 Django 기반으로 만들어진 서비스 이다. -
Django 특징
Python 기반, MVT 패턴, admin 기능 제공, 간편한 URL Parsing -
Framework란?
* 기본적으로 필요한 기능을 갖춰, 원하는 기능 구현에 집중하도록 도와주는 개발 환경
URLconf : URL경로에 맞춰 view와 template에 연결
Template : 사용자에게 보여지는 화면
View : 웹 요청을 받고, 전달받은 데이터를 처리해서 가공
Model : 데이터베이스에 저장되는 데이터
- Git Bash/ Github 계정
- Visual Studio Code
- Extension - Beutify : html파일 자동 정리 기능, control+shift+p 누르고 beautify file하면 자동으로 이쁘게 만들어주는 플러그인
-
PIP란? Python으로 작성된 패키지 소프트웨어를 관리하는 패키지 관리 시스템
-
VS Code 단축키 모음
# Ctrl + Shift + ` // 터미널 생성
# Ctrl + D // 현재 커서 위치의 코드 복사
# Alt + 위 또는 아래 커서 //현재 커서 위치의 코드 이동
- 가상환경 명령어 모음
$ python -m venv <가상환경 이름>
윈도우 |
$ source <가상환경 이름> / Scripts/ activate
Linux, Mac |
$ source <가상환경 이름>/bin/activate
$ deactivate //가상환경 끄기
- Django 명령어 모음
$ pip install django //Django 패키지 설치
$ django-admin startproject <프로젝트명> . //Django 프로젝트 생성 // 마지막에 .(온점)을 붙이면 새로운 폴더가 생기지 않습니다
$ python manage.py startapp <App 이름> //Django App 생성
$ python manage.py runserver //Django 로컬 서버 시작
- gitignore란?
- 각각의 컴퓨터마다 구동을 위해 임시로 만들어지는 파일들이 있는데 굳이 올려도 되는 파일들을 따로 지정해주는 것을 말한다.
- 사용법 : .gitignore 파일을 하나 만들고 gitignore.io에서 vscode, python, django를 입력후 나온 .gitignore파일에 결과들을 복붙해준다.
- Django의 Project & App
- 하나의 Project == 하나의 Web Site
- Project 안의 의미 있는 기능들을 각각의 App으로 관리
- Django의 Project & App
- settings.py : 전체 프로젝트를 관리하는 설정 파일
- urls.py : 프로젝트의 URL 관리 파일
- wsgi.py 또는 asgi.py : 프로젝트를 서비스하기 위한 파일(배포할 때 아니면 볼 일 없는 파일)
- init.py : 해당 디렉토리가 Python Package의 일부임을 Python에게 알려주는 파일
- views.py : 웹 요청을 받고, 전달받은 데이터를 처리해서 가공하는 파일
- models.py : Datatbase와 관련된 다양한 역할 수행
- admin.py : 관리자 관련 파일
- apps.py : Project에게 App의 존재 알려줄 때 활용되는 파일
- Home 페이지 출력하기
- setting.py project에게 app 존재 알리기
- Templates User에게 보여줄 HTML 파일 만들기
- views.py 요청이 들어오면 HTML 파일을 열어주는 함수 정의
- urls.py url 요청을 views와 연결하기