장고의 프로젝트 구조를 살펴본다
django-admin startproject ABC
명령어로 프로젝트를 생성하면 다음과 같은 구조로 생성된다. 여기서 최상위 디렉토리를프로젝트 루트 디렉토리
라고 한다.
📂ABC 📌최상위 디렉토리, 프로젝트 루트 디렉토리
📄manage.py
📄db.sqlite3
📂ABC
📄__init__.py
📄settings.py
📄urls.py
📄wsgi.py
프로젝트 생성 시,
프로젝트 루트 디렉토리
내부에 있는 디렉토리를프로젝트 구성 디렉토리
라고 한다.프로젝트 구성 디렉토리
는 프로젝트 생성 시 프로젝트 이름과 동일한 이름으로 생성된다.프로젝트 구성 디렉토리
는 프로젝트의 가장 중심이 되는 디렉토리이며, 이름을 바꾼다면 많은 수정을 해야한다.
📂ABC
📄manage.py
📄db.sqlite3
📂ABC 📌프로젝트 구성 디렉토리
📄__init__.py
📄settings.py
📄urls.py
📄wsgi.py
manage.py
는 장고 프로젝트 관리를 위한 명령어를 지원하는 파일이다. 앱 생성, 데이터베이스 관련 명령, 개발 서버 실행 등 여러 기능을 한다.
📂ABC
📄manage.py 📌
📄db.sqlite3
📂ABC
📄__init__.py
📄settings.py
📄urls.py
📄wsgi.py
프로젝트에서 사용하는 데이터베이스 파일이다. 자세한 내용은 별도의 포스팅으로 설명하겠다.
📂ABC
📄manage.py
📄db.sqlite3 📌
📂ABC
📄__init__.py
📄settings.py
📄urls.py
📄wsgi.py
현재 디렉토리가 하나의 파이썬 패키지로 인식될 수 있도록 하는 파일이며, 내용은 비어있다.
파이썬 버전 3.3
이상은 해당 파일이 없어도 파이썬 패키지로 인식되지만,하위버전호환
을 위해 남겨둔다.
📂ABC
📄manage.py
📄db.sqlite3
📂ABC
📄__init__.py 📌
📄settings.py
📄urls.py
📄wsgi.py
프로젝트의 전반적인 설정을 담당하는 파일이다. 시간대, 데이터베이스, 경로 등을 관리한다.
📂ABC
📄manage.py
📄db.sqlite3
📂ABC
📄__init__.py
📄settings.py 📌
📄urls.py
📄wsgi.py
입력된 url에 따라 특정 페이지로 연결해주는 파일이다.
📂ABC
📄manage.py
📄db.sqlite3
📂ABC
📄__init__.py
📄settings.py
📄urls.py 📌
📄wsgi.py
Web Server Gateway Interface
의 약어이며, 웹 서버와 장고 프레임워크가 소통하기 위한 일종의 약속이며, 자세한 내용은 별도의 포스팅으로 설명하겠다.
📂ABC
📄manage.py
📄db.sqlite3
📂ABC
📄__init__.py
📄settings.py
📄urls.py
📄wsgi.py 📌