[Django] [Python_Django] 관리자 계정에서 테이블 관리하기

장고에서는 저번에 언급했듯이 관리자 기능을 제공한다.

이 관리자 기능에서 CRUD기능이 구현 되어있어서

단 코드 몇줄로 테이블을 쉽게 관리 할 수 있게 된다.

CRUD
Create(생성), Read(읽기), Update(갱신), Delete(삭제) 전체를 뜻하는 말이다.
즉, 사용자 인터페이스가 기본적으로 갖춰야 할 것들을 의미한다.

관리자 계정 페이지를 수정해야 되니까 admin.py 파일에서 수정한다.

파일에서 클래스를 불러와야 하기때문에 같은 폴더에 있는 models에서 Boards를 import 해준다.

board > admin.py
 
 
from django.contrib import admin
 
from .models import Boards
 
 
 
admin.site.register(Boards)
 
# Register your models here.

그리고 admin.site.register로 테이블을 관리자 계정에 띄울수 있다.

 

 

하지만 저렇게만 뜬다면 게시물이 많아졌을때 저게 무슨 게시물인지 모르게 된다.

그래서 데코레이터를 이용해 클래스를 꾸며준다.

board > admin.py
 
 
from django.contrib import admin
 
from .models import Boards
 
 
 
@admin.register(Boards)
 
class Boardsadmin(admin.ModelAdmin):
 
list_display = (
 
'id',
 
'title',
 
'Thumbnail',
 
'view_count',
 
'created_at',
 
'updated_at'
 
)
 
search_fields = (
 
'title',
 
)
 
list_display_links = (
 
'id',
 
'title',
 
)
 
list_filter = (
 
'created_at',
 
)

Boards를 더 가독성있게 나타내기 위한 클래스 이니 이름은 BoardsAdmin으로 짓고

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

list_display는 Boards 클래스에서 원하는 값(속성, 애트리뷰트)을 관리자 계정에 띄어주게 해준다.

search_fields는 검색 기능을 만드는 것인데, 원하는 값을 넣으면 그 값으로 검색이 가능해진다.

list_display_links는 수정 탭으로 가는 링크를 원하는 값에다가 설정 할 수 있다.(기본적으로 id에 링크 되어있다.)

list_filter는 원하는 값으로 필터링 할 수 있다.

 

 

이제 id나 title에 걸려있는 링크로 가면 그 값을 수정 할 수 있게 된다.

 

[출처] https://ludeno-studying.tistory.com/28

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
476 [Django] user의 ip address 가지고 오기 졸리운_곰 2023.05.07 131
475 [Django] [Python_Django] You are trying to add a non-nullable field '필드명' to post without a default 해결 졸리운_곰 2023.05.07 106
» [Django] [Python_Django] 관리자 계정에서 테이블 관리하기 file 졸리운_곰 2023.05.06 132
473 [python][자료구조] Python의 JSON - 문자열을 JSON으로 변환하는 방법 졸리운_곰 2023.05.06 91
472 [Django] TIP - 장고 데이터베이스 여러개 사용하기 (Django multidatabase) file 졸리운_곰 2023.05.05 97
471 [Python 일반] [python] requirements.txt로 패키지 관리하기 졸리운_곰 2023.05.05 82
470 [python 일반] pip이용하여 requirements.txt 만들기 file 졸리운_곰 2023.05.04 103
469 [Django] 장고 동작 flow에 대해 알아보자! file 졸리운_곰 2023.05.01 117
468 [python django] 내 이해를 도울 Django flow file 졸리운_곰 2023.05.01 65
467 [Django] 개발 Flow & 개발 환경 세팅 file 졸리운_곰 2023.05.01 55
466 [Django] 장고 명령어 기초 정리 졸리운_곰 2023.05.01 109
465 [python django] 장고 자주 쓰는 manage.py 명령 졸리운_곰 2023.05.01 75
464 [PyCharm] 파이참 에러 file 졸리운_곰 2023.04.29 79
463 [PyCharm] 파이썬 - UNKNOWN ENCODING: X-WINDOWS-949 에러 file 졸리운_곰 2023.04.29 113
462 [Python 인터넷] 웹 페이지를 mhtml로 저장하기 python web page save as mthml 졸리운_곰 2023.04.12 136
461 [Python 인터넷] 16 - 셀레니움 이미지 크롤링, 스크롤 다운 file 졸리운_곰 2023.04.06 75
460 [Python 인터넷] 15 - 셀레니움 크롤링 (input) file 졸리운_곰 2023.04.06 62
459 [Python 인터넷] 14 - 셀레니움 click file 졸리운_곰 2023.04.06 75
458 [Python 인터넷] 13 - 셀레니움 사용해보기 file 졸리운_곰 2023.04.06 75
457 [Python 인터넷] 12 - 데이터 엑셀로 저장 file 졸리운_곰 2023.03.31 108
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED