티스토리 뷰

※본 자료는 김석훈, 『파이썬 웹 프로그래밍(개정판)』, 한빛미디어, pp151-218. 를 참고하여 만들었습니다.

 

1. Admin 사이트 꾸미기

 

- 장고의 Admin 사이트는 데이터베이스에 들어있는 데이터를 쉽게 관리할 수 있도록 데이터 생성, 조회, 변경, 삭제 등의 기능을 제공한다.

(프로세스의 상태조회, 기동 및 정지등의 프로세스 관리 기능은 제공 x)

 

- Django 실행 이후 http://127.0.0.1:8000/admin/ 접속

 

 (1) 데이터 입력 및 수정

[Add], [Change] 를 이용하여 데이터 입력 및 수정 가능

 

model.py에 정의해놓은 table 구조에 따라 입력폼이 생성된다.

 

(2) 필드의 순서 변경 

 

polls/admin에서 필드의 순서를 바꿀 수 있다.

 

(3) 필드 분리

polls/admin.py 에서 QuestionAdmin 을 수정하여 필드를 나눌 수 있다.

 튜플의 첫 번째 인자 : 필드의 제목

 튜플의 두 번째 인자 : dict 형태로 column 이름 전달

 

(4) 필드 접기

polls/admin.py 에서 QuestionAdmin을 수정하여 필드를 접을 수 있다.

 

 

(4) 외래키 관계 화면

 

Choice는 Question과 FK로 연결되어 있기 때문에 Question을 직접 입력 할 수 없고 선택해야 한다.

 - Question에 대한 Choice를 추가하기 위해서 매번 1개 씩 작업을 하는 일이 매우 번거로움 

    -> 편하게 할 수 있는 방법이 있지 않을까?

 

polls/admin.py에서 ChoiceInline 과 Question에 Inlines를 추가하여 외래키로 연결된 table를 쉽게 추가 할 수 있다.

 

(5) 테이블 형식으로 보여주기

 

polls/admin.py 에서 ChoiceInline의 상속을 admin.TabularInline로 바꿔서 테이블 형식으로 바꿀 수 있다.

 

(6) 레코드 리스트 컬럼 지정하기

Default로 __str__() 메소드의 리턴값을 제목으로 보여준다.

 - 다른 컬럼도 보기 위해서 설정을 바꿔보자!

QuestionAdmin에 list_display를 추가해서 Column을 추가로 볼 수 있다.

 

(7) list_filter

 

QuestionAdmin에 list_filter를 더해서 우측에 네비게이터 필터를 만든다.

 

(8) search_fields

 

QuestionAdmin에 search_fields를 더해서 Search 기능을 추가한다. 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함