Django는 강력한 관리자 페이지를 기본으로 제공합니다. 모델을 관리자 페이지에 등록하면 웹 UI를 통해 데이터 생성, 수정, 삭제까지 손쉽게 할 수 있죠.
이번 글에서는 admin.site.register() 함수를 통해 모델을 관리자에 등록하는 법을 알아보겠습니다.
✅ 기본적인 모델 등록
from django.contrib import admin
from .models import Post, Author, Tag
✍ 등록 코드
admin.site.register(Post, PostAdmin)
admin.site.register(Author)
admin.site.register(Tag)
- PostAdmin은 Post 모델에 대한 커스터마이징 설정 클래스입니다.
예를 들어 list_display, prepopulated_fields, list_filter 등을 지정해 목록 화면을 더 편리하게 만들 수 있어요.
class PostAdmin(admin.ModelAdmin):
prepopulated_fields = {"slug": ("title",)}
list_display = ("title", "author")
list_filter = ("author", "date")
- Author, Tag는 기본 설정대로 관리자에 등록되며, 특별한 admin 옵션 없이도 사용 가능합니다.
📌 관리자 페이지에서 이렇게 보입니다
- Post: 제목과 작성자를 한 눈에 보고, 날짜별 필터링 가능
- Author: 이름만 관리할 수 있는 기본 화면 제공
- Tag: 태그 이름을 CRUD할 수 있는 화면 제공
📎 마무리
Django의 admin 기능은 프로토타이핑 및 백오피스 제작에 매우 유용합니다.
admin.ModelAdmin을 활용하면 더욱 강력한 기능을 설정할 수 있으니, 다음 글에서 더 자세히 알아보겠습니다!
'Programming > Django' 카테고리의 다른 글
| [Django] ManyToManyField 역참조 출력 오류 해결: post.tags 관련 에러 정리 (4) | 2025.07.23 |
|---|---|
| 🧩 Django 관리자에서 Post 모델 꾸미기 - PostAdmin 설정하기 (3) | 2025.07.23 |
| 📘 Django ORM 이해하기 – 역참조란 무엇인가? (1) | 2025.07.23 |
| 📌 [Django 오류] QuerySet을 딕셔너리처럼 다루면 생기는 문제 (TypeError) (0) | 2025.07.23 |
| 📌 [Django Admin 오류] list_filter에 날짜 필드를 넣었더니 오류가? (admin.E116 해결법) (0) | 2025.07.23 |