admin 커스텀

    사용자 추가, 변경에 사용할 폼을 별도로 만들어 설정해 줄 수도 있다.

 

 

(app-admin.py)

 

from django import forms
from django.contrib import admin
from django.contrib.auth.models import Group
from django.contrib.auth.admin import UserAdmin as BaseUserAdmin
from django.contrib.auth.forms import ReadOnlyPasswordHashField
from django.core.exceptions import ValidationError

from user.models import Users

# admin 페이지
class UserAdmin(BaseUserAdmin):
    # 아래처럼 사용자 추가, 변경에 사용할 폼을 지정 가능
    # form = UserChangeForm
    # add_form = UserCreationForm

    # admin 리스트에 표시될 필드
    list_display = ["id","email", "is_admin"]
    list_filter = ["is_admin"]
    # admin의 user수정 페이지에서 보여지는 부분
    fieldsets = [
        (None, {"fields": ["password", "gender", "age", "bio"]}),
        ("Permissions", {"fields": ["is_admin"]}),
    ]

    # admin의 user생성 페이지에서 보여지는 부분
    add_fieldsets = [
        (
            None,
            {
                "classes": ["wide"],
                "fields": ["email", "password1", "password2", "name", "gender", "age", "bio"],
            },
        ),
    ]
    # 검색 필드
    search_fields = ["email"]
    ordering = []
    filter_horizontal = []

admin.site.register(Users, UserAdmin)
# Group 모델을 등록 해제(사용x)
admin.site.unregister(Group)

 

 

 

 

JWT 커스텀 공식문서

https://docs.djangoproject.com/en/4.2/topics/auth/customizing/

'Python > Django' 카테고리의 다른 글

[DRF] 08. Payload 커스텀  (0) 2023.04.26
[DRF] 07. 유저 API  (0) 2023.04.26
[DRF] 06. User / UserManager  (0) 2023.04.24
[DRF] 05. 기본 JWT 토큰  (0) 2023.04.24
[DRF] 04.5 Fetch API, CORS 에러  (0) 2023.04.24

+ Recent posts