● 제너릭뷰 속성 오버라이딩
: 제너릭 뷰를 사용하는 경우 제너릭뷰 에서 제공하는 속성들을 개발자가 변경해서 사용하고자 하는 경우를 속성 오버라이딩이라고 한다.
1. model
- 기본 뷰(View, TemplateView, RedirectView)를 제외한 모든 제너릭뷰에서 사용하는 속성,
- 뷰가 출력할 데이터가 들어있는 모델을 지정
2. queryset
- 기본 뷰(View, TemplateView, RedirectView)를 제외한 모든 제너릭뷰에서 사용하는 속성,
- 출력 대상이 되는 QuerySet 객체를 지정합니다.
※ queryset 속성을 지정하면 model 속성은 무시됨
※ model = Bookmark 와 queryset = Bookmark.object.all()은 같은 기능을 한다.
3. tempate_name
- 모든 제너릭 뷰에서 사용하는 속성
- 템플릿 파일명을 문자열로 지정
4. context_object_name
- 기본 뷰(View, TemplateView, RedirectView)를 제외한 모든 제너릭뷰에서 사용하는 속성,
- 템플릿 파일에서 사용할 컨텍스트 변수명을 지정
5. paginate_by
- ListView와 날짜 기반 뷰에서 사용
- 페이징 기능이 활성화된 경우에, 페이지당 몇개의 항목을 출력할 것인지 정수로 지정
6. date_field
- 날짜 기반 뷰에서 기준이 되는 필드를 지정
- 이 필드를 기준으로 년/월/일을 검사함
- 필드의 타입은 DateField, DateTimeField 타입으로 지정해야 한다.
7. make_object_list
- YearArchiveVIew 사용시에 해당 년에 맞는 객체들의 리스트를 생서할지 여부를 지정
- True이면 객체들의 리스트를 만들고 그 리스트를 템플릿에서 사용할 수 있음.
8. form_class
- FormView, CreateView, UpdateView에서 사용
- 폼을 만드는데 사용할 클래스를 지정
9. initial
- FormView, CreateView, UpdateView에서 사용
- 폼에 사용할 초기 데이터를 사전({}) 형태로 지정
10. fields
- CreateView, UpdateView에서 사용
- 폼에 사용할 필드를 지정
11. success_url
- FormView, CreateView, UpdateView, DeleteView 에서 사용
- 폼에대한 처리가 성공한 이우에 리다이렉트될 URL을 지정
'python + Django' 카테고리의 다른 글
python crawling (naver) (0) | 2019.11.01 |
---|---|
static파일 등록/사용 (0) | 2019.04.13 |
파이썬 진행상황 (0) | 2019.02.18 |
django 가상환경 설정 (windows10) (0) | 2019.02.12 |
models.py 추가 사항 (0) | 2019.02.11 |