jm_p_op
django admin에서 필드 (어드민)상속받기 본문
범용성 좋은 방법
class CommonDisplayAdmin(admin.ModelAdmin):
list_display=()
list_display=()
readonly_fields=()
common_list_display=('created_at','updated_at',"show_status")
common_fields =('created_at','updated_at',"show_status")
common_readonly_fields = ('created_at','updated_at')
def __init__(self, model: type, admin_site):
self.fields+=self.common_fields
self.list_display+=self.common_list_display
self.readonly_fields+=self.common_readonly_fields
super().__init__(model, admin_site)
class PetSitterReviewDisplay(CommonDisplayAdmin):
fields=('writer','sitter','content','star')
list_display=('writer','sitter','content','star')
readonly_fields=('writer','sitter','content','star')
번외 방법
class CommonDisplayAdmin(admin.ModelAdmin):
list_display=('created_at','updated_at',"show_status")
fields =('created_at','updated_at',"show_status")
readonly_fields = ('created_at','updated_at')
class PetSitterReviewDisplay(CommonDisplayAdmin):
def __init__(self, model: type, admin_site):
self.fields=('writer','sitter','content','star')+self.fields
self.list_display=('writer','sitter','content','star')+self.list_display
super().__init__(model, admin_site)
class CommonDisplayAdmin(admin.ModelAdmin):
list_display=('created_at','updated_at',"show_status")
fields =('created_at','updated_at',"show_status")
readonly_fields = ('created_at','updated_at')
class PetSitterReviewDisplay(CommonDisplayAdmin):
def get_list_display(self, request: HttpRequest) -> Sequence[str]:
return ('writer','sitter','content','star')+self.list_display
def get_fields(self, request: HttpRequest,obj):
return ('writer','sitter','content','star')+self.fields
#list_display = ('writer','sitter','content','star')
#fields =('writer','sitter','content','star')
'py > django' 카테고리의 다른 글
.py django password 동일한지 확인 (0) | 2023.05.09 |
---|---|
django-admin (0) | 2023.04.28 |
Django custumizing (0) | 2023.04.25 |
django simple jwt -db (0) | 2023.04.24 |
django, gitignore- migrations/ _initial.py 삭제 (0) | 2023.04.19 |