Django admin은 준비된 등록 명령을 통해 간단하게 admin 페이지를 구축할 수 있습니다.
admin.site.register()
라는 매서드는 다음과 같이 사용할 수 있습니다.
# blog/admin.py
from django.contrib import admin
from .models import Post
admin.site.register(Post)
admin.site.register(Post)
는 Post 모델을 Admin 페이지에서 관리할 수 있도록 등록하는 매서드입니다. 이렇게 등록한 모델은 /admin
url로 접속할 경우, 등록된 모델을 확인할 수 있습니다.
Class는 다음과 같이 사용할 수 있습니다.
# blog/admin.py
from django.contrib import admin
from .models import Post
class PostAdmin(admin.ModelAdmin):
pass
admin.site.register(Post)
admin register를 Decorator로도 등록할 수 있습니다.
# blog/admin.py
from django.contrib import admin
from .models import Post
@admin.register(Post)
class PostAdmin(admin.ModelAdmin):
pass
이처럼 Admin 사이트에서 하나씩 모델을 등록하게 될 경우, 모든 관리자 페이지가 동일한 디자인으로 적용됩니다. 따라서 관리자 페이지 별 커스텀은 AdminSite
라는 클래스를 상속받아 새롭게 생성할 수 있습니다.