반응형
수정 삭제 추가 기능을 방지한 것과 그렇지 않은 것의 차이.
결제 기록 같이 수정이 필요없는 것은 막아 놓는게 좋다.
from django.contrib import admin
class AAInline(admin.TabularInline):
model = AA
class BBInline(admin.TabularInline):
model = BB
class CCInline(admin.TabularInline):
model = CC
class DDInline(admin.TabularInline):
model = DD
class FFInline(admin.TabularInline):
model = FF
readonly_fields = ['aa','bb','cc','dd','ff',]
def has_delete_permission(self, request, obj=None):
#Disable delete
return False
def has_add_permission(self, request, obj=None):
#Disable add
return False
def has_change_permission(self, request, obj=None):
#Disable update
return False
class ZZAdmin(admin.ModelAdmin):
def has_delete_permission(self, request, obj=None):
#Disable delete
return False
list_display = ['__str__',]
inlines = [AccountCoursePeriodInline]
class GGAdmin(admin.ModelAdmin):
list_display = [
'gg',
'hh',
'jj'
]
list_display_links = [
'gg',
]
inlines = [AA, BB, CC, DD]
class QQAdmin(admin.ModelAdmin):
list_display = ['id','start_date', 'end_date']
class WWAdmin(admin.ModelAdmin):
list_display = ['tt', 'pp','oo','ii','yy']
list_display_links = ['tt']
list_filter = ('tt',)
class EEAdmin(admin.ModelAdmin):
list_display = ['rr','ll','kk']
admin.site.register(FF, FFInline)
admin.site.register(ZZ, ZZAdmin)
admin.site.register(GG, GGAdmin)
admin.site.register(QQ, QQAdmin)
admin.site.register(WW, WWAdmin)
하나의 어드민 코드
아래의 코드를 넣으면 수정을 못하게 할 수 있다.
def has_delete_permission(self, request, obj=None):
#Disable delete
return False
def has_add_permission(self, request, obj=None):
#Disable add
return False
def has_change_permission(self, request, obj=None):
#Disable update
return False
반응형
'Framework > Django' 카테고리의 다른 글
Django 장고 admin 어드민 method 메소드 unknown field Error (0) | 2021.04.21 |
---|---|
Django - admin 사이트를 직관적으로 쓰기 (0) | 2021.04.07 |
Django-UnitTest(유닛테스트) (0) | 2020.06.16 |
프로젝트시작할 때 장고 이니셜 세팅 (0) | 2020.06.08 |
치팅 노트 (0) | 2020.06.02 |