본문 바로가기

웹/Django

장고 프로젝트 순서2 - 뷰

클래스형 뷰로 정의

 

1.인덱스 페이지

인덱스 페이지는 TemplateView 를 상속해서 구현하면 편하다

오버라이딩이기 때문에 template_name 변수를 지정해야한다.

템플릿 시스템으로 넘겨줄 컨텍스트 변수가 있으면 def get_context_data() 재정의 한다.

변수는 context= super().get_context_data() 재정의 이때 super() 꼭 쓰자

return도 필수이다.

 

2.리스트뷰 페이지

ListView를 상속받는다.

model 필드만 재정의하면 된다.

디폴트 속성이 있는데 컨텍스트 변수로 object_list를 사용하고

템플릿 파일을 소문자모델명_list.html 로 사용한다.

예시 

class BookList(ListView):

    model = Book

#Book에 있는 테이블을 가져와 object_list 라는 컨텍스트 변수 구성,

#템플릿 파일 어플리케이션명/book_list.html

 

3.디테일뷰 페이지

디폴트 속성, 컨텍스트 변수명 object 

템플릿 파일 소문자모델명_detail.html

' > Django' 카테고리의 다른 글

테스트 하기  (0) 2020.12.23
배포시 주의점  (0) 2020.12.21
장고 프로젝트 순서 기본1 -모델  (0) 2020.12.14
제네릭 뷰  (0) 2020.12.11
클래스형 뷰  (0) 2020.12.11