TIL: Django Admin 인터페이스 및 모델 등록 관리
오늘은 Django에서 제공하는 Admin 인터페이스를 공부했다. Admin 패널을 사용하면 웹 UI를 통해 데이터베이스를 쉽게 관리할 수 있어서, 직접 SQL을 작성하지 않아도 데이터를 추가, 수정, 삭제할 수 있다.
1. Django Admin 사이트 개념
Django에는 기본적으로 Admin 패널이 포함되어 있으며, 이를 통해 모델의 데이터를 손쉽게 관리할 수 있다. 특히 슈퍼유저(Superuser) 계정을 만들면 관리자 권한을 부여받아 모든 데이터를 한눈에 보고 조작할 수 있다.
Django Admin의 주요 특징
- 기본적으로 Django 프로젝트에 포함되어 있음
- 관리자 계정만 접근할 수 있음
- admin.py에서 모델을 등록하면 Admin 패널에서 바로 관리 가능
- UI 커스터마이징을 통해 더욱 직관적으로 만들 수 있음
2. Django Admin 활성화 및 접속하기
Django Admin을 사용하려면 settings.py에서 **django.contrib.admin**이 INSTALLED_APPS에 포함되어 있어야 한다.
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
이 부분은 기본적으로 설정되어 있으므로 수정할 필요는 없었다.
슈퍼유저 생성
Admin 페이지에 로그인하려면 슈퍼유저(Superuser) 계정을 만들어야 한다. 터미널에서 다음 명령어를 실행하면 된다.
python manage.py createsuperuser
이후 아이디, 이메일, 비밀번호를 입력하면 관리자 계정이 생성된다.
Admin 패널 접속
서버를 실행한 후 브라우저에서 http://127.0.0.1:8000/admin/로 접속하면 Django Admin 로그인 화면이 나타난다. 생성한 슈퍼유저 계정으로 로그인하면 된다.
3. Django Admin에 모델 등록하기
오늘 가장 중요하게 배운 부분은 모델을 Admin 패널에서 관리할 수 있도록 등록하는 과정이었다.
기본 모델 등록
예를 들어, 다음과 같은 Post 모델이 있다고 가정하자.
# models.py
from django.db import models
class Post(models.Model):
title = models.CharField(max_length=255)
content = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.title
이제 admin.py에서 이 모델을 등록해주면 Admin 패널에서 관리할 수 있다.
# admin.py
from django.contrib import admin
from .models import Post
admin.site.register(Post) # ✅ Post 모델을 Admin에 등록
이렇게 하면 Django Admin에서 Post 모델을 추가, 수정, 삭제할 수 있었다.
오늘 Django Admin을 공부하면서, 기본적으로 제공되는 기능이 강력하다는 걸 깨달았다.
'내일배움캠프 TIL' 카테고리의 다른 글
| 2025.02.12TIL : LangChain (0) | 2025.02.12 |
|---|---|
| 2025.02.11 TIL - Django : 흐름도 (0) | 2025.02.12 |
| 2025.02.07TIL: GIT협업 WORK FLOW (1) | 2025.02.07 |
| 2025.02.06 TIL : 가상환경 설정 문제 (0) | 2025.02.06 |
| 2025.02.05TIL - Django : PostDetail (0) | 2025.02.05 |