Django 프로젝트 생성하기
🔹 django-admin startproject {projectName}
🔹 프로젝트 구조
#프로젝트명/
manage.py
#프로젝트명/
__init__.py
settings.py
urls.py
wsgi.py
🔹 Project Root
- 최상위 디렉토리인 프로젝트 명 디렉토리는 Project Root라고 하고 프로젝트의 전체 파일이 들어 있는 디렉토리
🔹 manage.py
- manage.py는 하나의 Django 프로젝트를 생성하면 자동으로 만들어지는 프로젝트 관리를 위한 명령 유틸리티
- Django 앱을 만들거나, 데이터베이스 관련 기능을 수행하거나, 개발 서버를 실행하는 등의 여러기능을 실행
🔹 ProjectApp (Django Root)
- Project Root 안에 있는 프로젝트 명 디렉토리는 Django 프로젝트를 위한 여러 파일이 담겨 있는 디렉토리
🔹 init .py
__init__.py
파일이 포함된 디렉토리를 Python의 패키지로 인식하게끔 하기 위해서 사용
- python 3.3 이후 버전부터는 이 파일이 없어도 패키지로 인식되지만 하위 버전 호환을 위해 작성하는 것을 권장
🔹 settings.py
- settings.py 는 Django 프로젝트의 여러 가지 설정을 담고 있는 파일
- Allowed Hosts 설정하기 >
ALLOWED_HOSTS = ['*']
python manage.py runserver 0.0.0.0:8000
🔹 urls.py
- urls.py 는 Django 프로젝트로 들어온 url을 보고 알맞은 View로 연결해주는 역할
🔹 wsgi.py
- wsgi.py 의 WSGI는 WebServer Gateway Interface의 약자로 파이썬에서 웹 통신을 하기 위한 일종의 약속
Django 앱 생성하기
🔸 python manage.py startapp {appName}
🔸 app 구조
{appName}/
__init__.py
admin.py
apps.py
migrations/
__init__.py
models.py
tests.py
views.py
🔸 admin.py
- 각각의 앱을 Django의 관리자 기능과 연결하거나 관리자 기능에 대해 설정을 하는 파일
🔸 apps.py
- 각각의 App마다 추가적인 기능 및 설정을 넣어 주기 위한 파일
🔸 migrations 디렉토리
- Django 앱의 데이터 구조에 대한 변경 사항인 migration 파일이 저장되는 디렉토리
🔸 models.py
- 앱에서 사용하는 데이터 구조를 정의하고 데이터베이스와의 소통을 담당하는 파일
🔸 tests.py
🔸 views.py
- 앱에서 어떤 기능을 할지에 대한 메인 로직을 담당하는 파일