-
Django 초간단 게시판 6. admin.py 업그레이드Python/초간단 장고 Django 2021. 5. 28. 11:41반응형
일단 서버가 돌아가는 상황이니
커스텀, 리펙토링 등의 욕구가 생길 것이다.'초간단 게시판'답게 약간의 노력으로
큰 효과가 보이는 admin 페이지를 만져 보자.# board/admin.py from django.contrib import admin from .models import Article class ArticleAdmin(admin.ModelAdmin): list_display = ('id', 'title', 'author', 'content', 'created_at', 'modified_at') list_display_links = ('id', 'title', 'author') search_fields = ('title', 'author', 'content') readonly_fields = ('created_at', 'modified_at') list_filter = ('author', 'created_at', 'modified_at') # list_editable = ('title', 'author') # ordering = ('author', '-modified_at') # list_per_page = 30 admin.site.register(Article, ArticleAdmin)
ArticleAdmin 클래스를 만들어서
다음 위치에 추가하면 된다.
admin.site.register(Article, ArticleAdmin)list_display는 리스트에서 볼 필드들이다.
모델에서 해당 필드들을 가져오면 된다.list_display_links는
리스트의 첫 번째 필드만
클릭할 수 있는 링크가 제공되는데,
id 같은 것을 첫 번째로 설정해 두면
클릭하기 불편하다.
이럴 때 사용하면 된다.search 기능도 무척 강력하다.
검색을 원하는 필드를
search_fields 안에 넣어두면 끝이다.list_editable는 리스트 화면에서
바로 필드를 에디팅할 수 있는 기능이다.
list_display_links 와 겹치면 안된다.list_filter는 해당 값의 범위에 해당되는
게시물을 선택해 보는 기능이다.readonly_fields는 readonly 항목은
관리자 화면의 detail 화면에서도 보이지 않는데
보고 싶은 항목을 넣어두면 볼 수 있다.ordering을 정렬 기능
관리자 창에서 filed명을 클릭해서
바로바로 정렬할 수도 있기 때문에....반응형