01. Django란?
Django 란?
파이썬 기반 웹어플리케이션 프레임워크
- 다양한 기능을 제공 (쿠키 처리, 로그아웃 관리, 로그인 처리, 데이터베이스 처리)
- 일반 프로그래밍에서는 모든 고려사항을 직접 구현해야 함
- 프레임워크를 사용하면 프레임워크에서 제공해주는 틀에 맞게 입력값만 입력하면 됨
django 개발 환경 설정
- 터미널에서 pip install django 입력
- 터미널에 django-admin startproject config . 입력
- .은 현재 위치에 프로젝트 생성
- 터미널에 python manage.py runserver 입력
- 웹 브라우저에서 http://127.0.0.1:8000으로 접속해서 테스트
장고 프로젝트의 다양한 파일
venv(libary.root)
- manage.py - 장고의 다양한 명령어를 실행하기 위한 파일, 변경이 되지 않음(x)
- db.sqlite3 - 로컬 DB 파일, 비어 있음
config 폴더 - 프로젝트의 설정 파일과 웹 서버 실행을 위한 파일들이 들어 있음
- __[init]__.py - 파이썬 2.x 버전과 호환을 위해 만들어진 파일, 여러 폴더에 생성됨, 지워도 무관
- settings.py - 프로젝트에 다양한 설정에 관한 내용이 들어있는 파일
- urls.py - 하나의 프로젝트에는 다양한 설정에 관한 내용이 들어있는 파일
- asgi.py wsgi.py - 웹서버에 배포할 때 설정파일들을 연결해 주는 파이썬 파일
App
프로젝트에서 각 기능을 담당하는 app
App 추가하기
- 터미널에 python manage.py startapp [앱 이름] 입력
App의 구조
- admin.py - 관리자가 접속하면 보이는 화면, 내장돼 있음
- apps.py - 앱을 프로젝트에 등록하는 기능을 함
- models.py - 장고 DB 관련된 파일 / DB 사용 계획, 정의, 연결 등의 다양한 설정들을 함
- tests.py - 테스트를 위한 파이썬 파일
- views.py- 실질적으로 파이썬 코드가 실행이 되는 부분, 클래스형, 함수형 모두 가능
- urls.py - 폴더 안에 없지만, 추가로 생성해서 사용해야 하는 파일
- migrations/ - 파이썬 모듈로 작동하는 폴더, 데이터 베이스 스키마 관련