Django 어플리케이션 생성 방법
28 Jan 2019 | Python djangoDjango 프로젝트 생성 이후 그 안에 어플리케이션을 생성하는 방법입니다.
다음은 post라는 어플리케이션을 생성한 다음 이루어지는 작업들입니다.
$ python3 manage.py startapp post
그 다음에는 어플리케이션에서 사용할 데이터 모델(Model)을 생성합니다.
Django는 기본적으로 SQLite3 데이터베이스를 사용하며, settings.py 파일에서 다른 데이터베이스를 사용할 수도 있습니다.
settings.py에는 다음과 같이 데이터베이스가 설정되어 있습니다.
# Database
# https://docs.djangoproject.com/en/2.1/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
post 어플리케이션을 settings.py에 등록하기
방금 생성한 post 어플리케이션을 setting.py 내에 다음과 같이 등록합니다.
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'post',
]
타임존(TimeZone) 변경
settings.py내 타임존 부분을 변경합니다.
TIME_ZONE = 'Asia/Seoul'
데이터베이스 테이블(Table) 정의
위에서 생성한 post 어플리케이션내 models.py 파일에서 테이블을 정의할 수 있습니다.
from django.db import models
# Create your models here.
class Post(models.Model):
pub_date = models.DateTimeField('date published')
title = models.CharField(max_length=20)
text = models.CharField(max_length=300)
def __str__(self):
return self.text
admin.py에 모델 반영
from django.contrib import admin from post.models import Post # Register your models here. admin.site.register(Post)
그 이후 manage.py 파일의 makemigrations 명령어를 실행해서 데이터베이션에 변경사항을 반영(migration)합니다.
$ python3 manage.py makemigrations
Migrations for 'post':
post/migrations/0001_initial.py
- Create model Post
$ python3 manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, contenttypes, post, sessions
Running migrations:
Applying post.0001_initial... OK
그 이후 브라우저에서 http://127.0.0.1:8000/admin에 접속하면 방금 작업한 테이블이 잘 반영되어 있는 것을 확인할 수 있습니다.