기존 django 2.*에서 3.2로 업데이트 시 실행을 하면 다음과 같은 wanning이 나옵니다.
Auto-created primary key used when not defining a primary key type, by default 'django.db.models.AutoField'.
HINT: Configure the DEFAULT_AUTO_FIELD setting or the VendorsConfig.default_auto_field attribute to point to a subclass of AutoField, e.g. 'django.db.models.BigAutoField'.
django 3.2부터는 모델의 primary key의 속성을 설정해 줘야 합니다. 기본 키의 설정은 DEFAULT_AUTO_FIELD의 키로 프로젝트 / 앱 / 모델 별로 설정이 가능합니다.
프로젝트 전체 세팅
# settings.py
DEFAULT_AUTO_FIELD = 'django.db.models.AutoField'
app별 세팅
# apps.py
from django.apps import AppConfig
class MyAppConfig(AppConfig):
default_auto_field = 'django.db.models.AutoField'
name = 'my_app'
모델별 세팅
# models.py
from django.db import models
class MyModel(models.Model):
id = models.AutoField(primary_key=True)
docs.djangoproject.com/en/3.2/releases/3.2/docs.djangoproject.com/en/3.2/releases/3.2/#customizing-type-of-auto-created-primary-keys
'web > Django' 카테고리의 다른 글
pytest 시 여러개의 디비 사용하기 (0) | 2021.10.08 |
---|---|
raw query + group by 그리고 다른 디비에 접속 (0) | 2021.09.16 |
How Django process a request (0) | 2021.05.10 |
django RemoteUserAuthentication 는 별거 없습니다. (0) | 2020.06.24 |
django query 4 (0) | 2020.03.26 |