-
Django에서 사용되는 주요 python 파일
- models.py : 모델 클래스 정의
- views.py : 웹페이지 구성 특정 기능 정의
- urls.py : URL 지정
- settings.py : Django 환경 설정
models.py, urls.py, settings.py는 Django 웹 애플리케이션 구현을 위한 설정 및 요소 정의
views.py는 웹페이지 주요 기능을 정의하며 클래스 또는 함수를 단위로 함
Django 프로젝트를 생성하였다.
django-admin startproject로 프로젝트를 생성하며 test1이라고 이름붙였다.
생성한 test1이다.
바탕화면에 djangoProject내에서 프로젝트를 생성하였다.
djangoProject
ㄴtest1
ㄴmanage.py
ㄴtest1
ㄴasgi.py
ㄴsettings.py
ㄴurls.py
ㄴwsgi.py
ㄴ__init__.py
위와 같이 구성되어 있다.
- manage.py : Django 프로젝트와 다양한 방법으로 상호작용 하는 커맨드라인의 유틸리티, 자세한 내용은 다음 링크에서 확인 (django-admin and manage.py)
- test1/ : 디렉토리 내부에는 Python 패키지들이 저장된다. 이 디렉토리 내의 이름을 이용하여, (test.urls 와 같은 식으로) 프로젝트의 어디서나 Python 패키지들을 임포트한다.
- test1/__init__.py : Python이 현재 디렉토리를 패키지로 인식하게하는 빈 파일
- test1/settings.py : 현재 Django 프로젝트의 환경 및 구성 저장. Django settings에서 환경 설정이 어떻게 동작하는지 확인할 수 있다.
- test1/urls.py : 현재 Django project 의 URL 선언을 저장. Django 로 작성된 사이트의 목차이다. (URL dispatcher)
- mysite/asgi.py : An entry-point for ASGI-compatible web servers to serve your project. (How to deploy with ASGI)
- mysite/wsgi.py : 현재 프로젝트를 서비스하기 위한 WSGI 호환 웹 서버의 진입점 (How to deploy with WSGI)
django 프로젝트를 실행하기위해 웹서버를 가동한다.
djangoProject/test1 폴더의 manage.py 파일을 사용한다.
django 웹 애플리케이션을 생성하고 환경 설정을 변경하지 않으면 django에 내장된 admin, auth, contenttypes, sessions 앱도 같이 실행된다. 이 앱들은 각각의 DB를 가지고 있어 그 DB 모델을 반영하지 않고 웹서버를 가동할 경우 중간의 you have ~ to apply them 경고메세지가 뜬다.
경고메세지의 migrate는 프로젝트와 DB를 연동할때 DB모델을 반영하기 위한 명령어이다.
이 명령어를 사용할 경우 django web app에서 사용할 앱의 DB모델을 모두 반영하므로 경고메세지가 사라진다.
http://127.0.0.1:8000/ 으로 접속하면 다음과 같은 실행화면을 볼 수 있다.