Django 설치 및 초기설정

pinocchio
이동: 둘러보기, 검색

설치 및 초기설정

  • 장고 설치
pip install django
  • 장고 설치 확인
python -m django --version
  • 프로젝트 생성

mysite라는 프로젝트를 생성한다. mysite 대신에 원하는 프로젝트의 명칭을 입력해도 된다.

django-admin startproject mysite
  • 애플리케이션 생성

프로젝트의 루트 디렉토리인 mysite로 이동하여 myapp이라는 애플리케이션을 생성한다. myapp 대신에 원하는 애플리케이션 명칭을 입력해도 된다.

python manage.py startapp myapp


※ 프로젝트와 애플리케이션 생성이 끝나면 다음과 같은 폴더구조가 만들어진다.

프로젝트 폴더구조.jpg

  • 프로젝트 설정 파일 변경

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


유용한 참고 사이트