프로그래밍 Programming
Admin 페이지에서 특정 필드 readonly 로 변경하기
문장전달자
2016. 3. 13. 12:33
728x90
기본적으로 장고의 어드민 페이지는 모든 필드를 편집가능한(editable) 상태로 보여준다.
다음과 같이 특정 필드를 편집하지 못하게 readonly 필드로 만들 수 있다.
적용전(편집이 가능한 상태)
아래 예제는 세션 관리 테이블의 경우다.
2행과 같이 readonly 로 만들고 싶은 필드명을 튜플 형태로 기입한다.
admin.py
1 2 3 4 5 6 7 8 9 10 11 12 13 | class MstSessionAdmin(admin.ModelAdmin): readonly_fields = ('sessionkey',) fieldsets = [ ('Session Key', {'fields': ['sessionkey']}), (None, {'fields': ['id']}), (None, {'fields': ['remote_ip']}), (None, {'fields': ['login_dt']}), ] list_display = ('sessionkey','usn', 'remote_ip', 'login_dt') list_filter = ['login_dt'] search_fields = ['id', 'remote_ip'] ordering = ('-login_dt',) | cs |
적용 후의 모습으로 readonly 필드로 변경되었음을 확인할 수 있다.
728x90