[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

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
485 [python 일반] win32com.gen_py 라이브러리의 오류 해결 졸리운_곰 2023.06.03 26
484 [Python 일반] 파일(폴더) 이름에 사용할 수 없는 특수 문자 제거 졸리운_곰 2023.06.03 24
483 [Python 일반] 파이썬에서 재귀적으로 깊은 계층적 디렉토리를 생성하기 위한 makedirs 졸리운_곰 2023.06.03 24
482 [python] 인공지능 katiehouse / django-scikit-learn-tutorial file 졸리운_곰 2023.06.03 34
481 [python][자료구조] Python - MySQL 데이터 추가, 삭제, 업데이트 졸리운_곰 2023.05.13 27
480 [Python 인터넷] 네이버 뉴스 기사 크롤링 졸리운_곰 2023.05.13 35
479 [Django][Django restframework] Django REST framework 시작하기 file 졸리운_곰 2023.05.07 7
478 [Django] REST API 로그인 서버 만들기 (2) - DB 연동, 테스트 file 졸리운_곰 2023.05.07 14
477 [Django] REST API 로그인 서버 만들기 (1) - 코드 졸리운_곰 2023.05.07 21
476 [Django] user의 ip address 가지고 오기 졸리운_곰 2023.05.07 13
475 [Django] [Python_Django] You are trying to add a non-nullable field '필드명' to post without a default 해결 졸리운_곰 2023.05.07 19
» [Django] [Python_Django] 관리자 계정에서 테이블 관리하기 file 졸리운_곰 2023.05.06 8
473 [python][자료구조] Python의 JSON - 문자열을 JSON으로 변환하는 방법 졸리운_곰 2023.05.06 26
472 [Django] TIP - 장고 데이터베이스 여러개 사용하기 (Django multidatabase) file 졸리운_곰 2023.05.05 11
471 [Python 일반] [python] requirements.txt로 패키지 관리하기 졸리운_곰 2023.05.05 18
470 [python 일반] pip이용하여 requirements.txt 만들기 file 졸리운_곰 2023.05.04 33
469 [Django] 장고 동작 flow에 대해 알아보자! file 졸리운_곰 2023.05.01 17
468 [python django] 내 이해를 도울 Django flow file 졸리운_곰 2023.05.01 4
467 [Django] 개발 Flow & 개발 환경 세팅 file 졸리운_곰 2023.05.01 4
466 [Django] 장고 명령어 기초 정리 졸리운_곰 2023.05.01 17
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED