Ssa!

2022-09-28 수요일 회고록 본문

스파르타 내일배움캠프/TIL

2022-09-28 수요일 회고록

Ssa! 2022. 9. 29. 00:00

오늘 기존에 하던 문제 내주신 튜터님 대신 다른 튜터님이 오셔서 문제를 내주셨다. 새로운 개념을 익힐 수 있어 좋았고 중간에 하면서 오류를 낼 수 있다는 말을 들었을 때 오류를 해결할 수 있는 기회를 얻어서 좋았다. 

오늘의 목표 - User Model 확장하기

customuser라는 앱을 생성해주세요

python manage.py startapp customuser

settings.py에 앱을 등록해주세요.

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'introduce',
    'customuser',
]

Django의 User를 기반으로 만든 CustomModel라는 클래스를 만들어주세요.

  • 조건: 테이블 이름은 custom_user
  • Django의 User 모델에서 아래의 필드를 추가해주세요.
    • address (TextField, max_length=500, blank=True)
    • bio (TextField, max_length=500, blank=True)
    힌트: class CustomModel(AbstractUser)
from unittest.util import _MAX_LENGTH
from django.db import models
from django.contrib.auth.models import AbstractUser	

# Create your models here.
class CustomModel(AbstractUser):
    
    address = models.TextField(max_length=500, blank=True)
    bio = models.TextField(max_length=500, blank=True)

    class Meta:
        db_table = 'custom_user'

Django에게 기본 인증과정 (AUTH_USER_MODEL)을 customuser 앱에 작성한 CustomModel로 사용하겠다! 라고 알려주세요

AUTH_USER_MODEL = 'customuser.CustomModel'

데이터베이스에 변경사항을 반영하고 적용해주세요.

python manage.py makemigrations
python manage.py migrate

관리자 계정을 만들어주세요

python manage.py createsuperuser

Admin 사이트에서 CustomModel를 볼 수 있도록 적용해주세요.

from django.contrib import admin
from .models import CustomModel
# Register your models here.

admin.site.register(CustomModel)

서버를 켜고 CustomModels에서 아래와 같이 address와 bio를 볼 수 있다면 성공입니다.

'스파르타 내일배움캠프 > TIL' 카테고리의 다른 글

2022-09-30 금요일 회고록  (0) 2022.10.05
2022-09-29 목요일 회고록  (0) 2022.10.01
2022-09-27 화요일 회고록  (0) 2022.09.28
2022-09-26 월요일 회고록  (0) 2022.09.27
2022-09-23 금요일 회고록  (0) 2022.09.25