3 분 소요

3. DB 생성 및 migration적용

DB를 사용하기위해서 mysite/settings.py에 있는 DATABASES에 접근하여 설정을 변경 가능하다.

강의에서 사용되는 기본 SQL인 sqlite3을 사용한다

# Database
# https://docs.djangoproject.com/en/4.1/ref/settings/#databases

DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.sqlite3",
        "NAME": BASE_DIR / "db.sqlite3",
    }
}
key value작성법
ENGINE DB명을 입력한다 형식은 ‘django.db.backends.지원되는 DB명’으로 ‘django.db.backends.sqlite3’과 같이 작성한다
NAME 데이터베이스명으로 파일명을 포함한 절대경로를 사용하는 이름이 들어간다.

서버시간을 설정하기위해 다음과 같이 수정한다


# Internationalization
# https://docs.djangoproject.com/en/4.1/topics/i18n/

LANGUAGE_CODE = "ko-kr" # 언어설정

TIME_ZONE = "Asia/Seoul" # 서울시의 시간을 사용한다

USE_I18N = True #국제화 사용여부(그냥 k8s와 같은 줄임말이다)

USE_TZ = True #장고 시간대 사용여부

DB를 설정하는 이유는 많지만 우선적으로는 INSTALLED_APPS가 DB를 사용하는 경우가 많기 때문이다.


# Application definition

INSTALLED_APPS = [
    "django.contrib.admin",#어드민 사이트
    "django.contrib.auth",#인증 시스템
    "django.contrib.contenttypes",#컨텐츠 타입 시스템
    "django.contrib.sessions",#세션 시스템
    "django.contrib.messages",#메세지 시스템
    "django.contrib.staticfiles",#정적 파일 시스템
]

따라서 다음과 같은 커맨드를 사용해 DB를 설정한다. migrate 명령어는 셋팅의 INSTALLED_APPS 을 확인하고 mysite/settings.py 파일과 기본 어플리케이션이 가지고 있는 데이터베이스 마이그레이션 파일에 따라 필요한 테이블을 만든다.


python manage.py migrate

DB설정을 완료하면 기존 runserver시 나타나던 경고가 사라짐을 확인할 수 있다.

기존


You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
August 05, 2022 - 14:56:31
Django version 4.1, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

설정완료후


August 05, 2022 - 15:11:44
Django version 4.1, using settings 'mysite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.

태그:

카테고리:

업데이트:

댓글남기기