Django 설치 및 초기설정
설치 및 초기설정
- 장고 설치
pip install django
- 장고 설치 확인
python -m django --version
- 프로젝트 생성
mysite라는 프로젝트를 생성한다. mysite 대신에 원하는 프로젝트의 명칭을 입력해도 된다.
django-admin startproject mysite
- 애플리케이션 생성
프로젝트의 루트 디렉토리인 mysite로 이동하여 myapp이라는 애플리케이션을 생성한다. myapp 대신에 원하는 애플리케이션 명칭을 입력해도 된다.
python manage.py startapp myapp
※ 프로젝트와 애플리케이션 생성이 끝나면 다음과 같은 폴더구조가 만들어진다.
- 프로젝트 설정 파일 변경
mysite > settings.py 에서 프로젝트에 관한 전반적인 사항들을 설정해준다.
1. ALLOWED_HOSTS 항목 지정
장고는 DEBUG=True이면 개발모드로, False이면 운영모드로 인식. 운영모드인 경우는 ALLOWED_HOSTS에 반드시 서버의 IP나 도메인을 지정해야 하고, 개발모드인 경우에는 값을 지정하지 않아도 ['localhost', '127.0.0.1']로 간주한다. 하지만 개발모드에서도 기동할 서버의 IP(52.78.139.80)를 추가적으로 지정해주고 싶다면 아래와 같이 지정하면 된다.
ALLOWED_HOSTS = ['52.78.139.80', 'localhost', '127.0.0.1']
2. 애플리케이션을 설정 파일로 등록
프로젝트에 포함되는 애플리케이션들은 모두 설정파일에 등록되어야 한다. 새롭게 생성한 myapp 애플리케이션을 등록하기 위해서는 INSTALLED_APPS에 해당하는 아래와 같이 애플리케이션을 추가해준다.
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'myapp',]
3. 타임존 지정
최초에는 세계표준시(UTC)로 되어있는데, 한국 시간으로 변경한다.
#TIME_ZONE = 'UTC' TIME_ZONE = 'Asia/Seoul'
- 기본 테이블 생성
migrate 명령은 데이터베이스에 변경사항이 있을 때 이를 반영해주는 명령이다. 개발 시작 시점에 migrate를 해주는 것은 웹 개발시 반드시 필요한 사용자 및 그룹 테이블을 만들어주기 위한 것이다.
python manage.py migrate
- 웹 서버 실행 및 확인
python manage.py runserver 0.0.0.0:8000
- admin 사이트의 관리자 계정 생성
python manage.py createsuperuser