내용으로 건너뛰기
GaramX
사용자 도구
로그인
사이트 도구
검색
도구
문서 보기
이전 판
역링크
최근 바뀜
미디어 관리자
사이트맵
로그인
>
최근 바뀜
미디어 관리자
사이트맵
현재 위치:
home
»
python
»
django
»
class-based
추적:
python:django:class-based
이 문서는 읽기 전용입니다. 원본을 볼 수는 있지만 바꿀 수는 없습니다. 문제가 있다고 생각하면 관리자에게 문의하세요.
====== Built-in class-based views API ====== https://docs.djangoproject.com/en/3.2/ref/class-based-views/ * Base views * View * TemplateView * RedirectView * Generic display views * DetailView * ListView * Generic editing views * FormView * CreateView * UpdateView * DeleteView * Generic date views * ArchiveIndexView * YearArchiveView * MonthArchiveView * WeekArchiveView * DayArchiveView * TodayArchiveView * DateDetailView * Class-based views mixins * Simple mixins * ContextMixin * TemplateResponseMixin * Single object mixins * SingleObjectMixin * SingleObjectTemplateResponseMixin * Multiple object mixins * MultipleObjectMixin * MultipleObjectTemplateResponseMixin * Editing mixins * FormMixin * ModelFormMixin * ProcessFormMixin * DeletionMixin * Date-based mixins * YearMixin * MonthMixin * DayMixin * WeekMixin * DateMixin * BaseDeteListMixin * Class-based generic views - flattened index * Simple generic views * View * Template View * Redirect View * Detail Views * DetailView * List Views * ListView * Editing views * FormView * CreateView * UpdateView * DeleteView * Date-based views * ArchiveIndexView * YearArchiveView * MonthArchiveView * WeekArchiveView * DayArchiveView * TodayArchiveView * DateDetailView ===== class-based의 메소드 호출 ===== ==== View ==== ^ 순서 ^ 메소드 ^ 설명 ^ | 1 | setup(request, *args, %%**%%kwargs) | **dispatch()**에 앞서 키 초기화를 수행. 이 메소드를 덮어쓰면, **super()**를 호출해야 한다. | | 2 | dispatch(request, *args, %%**%%kwargs) | <wrap> **view**보기 의 일부 - **request** 인수와 인수 를 받아들이고 HTTP **response**을 반환하는 메서드입니다 . 기본 구현은 HTTP 메서드를 검사하고 HTTP 메서드와 일치하는 메서드에 위임을 시도합니다; GET은 **get()**에, POST는 **post()**에, 등등. 기본적으로 HEAD요청은 get()에 위임됩니다. HEAD와 다른 방식으로 요청 을 처리해야 하는 경우, **head()**메서드를 GET재정의할 수 있습니다. </wrap> | | 3 | http_method_not_allowed(request, *args, %%**%%kwargs) | <wrap> 뷰가 지원하지 않는 HTTP 메서드로 호출된 경우 이 메서드가 대신 호출됩니다. 기본 구현은 HttpResponseNotAllowed일반 텍스트로 된 허용된 메서드 목록과 함께 반환 됩니다.</wrap> | | 4 | options(request, *args, %%**%%kwargs) | OPTIONS HTTP 동사에 대한 요청에 대한 응답을 처리합니다. 보기에 허용된 HTTP 메서드 이름 목록이 포함된 **Allow**헤더가 있는 응답을 반환 합니다. | ==== TemplateView ==== **Method Flowchart** - setup() - dispatch() - http_method_not_allowed() - get_context_data() * get_context_data(%%**%%kwargs) - 템플릿 컨텍스트를 나타내는 사전을 반환합니다. 제공된 키워드 인수는 반환된 컨텍스트를 구성합니다. <code python> from django.views.generic.base import TemplateView from articles.models import Article class HomePageView(TemplateView): template_name = "home.html" def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context['latest_articles'] = Article.objects.all()[:5] return context </code> 적절한 경우 **alters_data** 를 사용하십시오. 템플릿 컨텍스트에 뷰 인스턴스가 있으면 잠재적으로 위험한 방법을 템플릿 작성자에게 노출시킬 수 있습니다. 이와 같은 메소드가 템플리트에서 호출되지 않도록하려면 해당 메소드에서 alters_data=True 를 설정 하십시오. 자세한 내용 은 템플릿 컨텍스트 렌더링에 대한 설명서를 참조하십시오. ==== RedirectView ==== **Method Flowchart** - setup() - dispatch() - http_method_not_allowed() - get_redirect_url() * get_redirect_url(*args, %%**%%kwargs) - 리디렉션 할 대상 URL을 구성합니다.
python/django/class-based.txt
· 마지막으로 수정됨: 2025/04/15 10:05 저자
127.0.0.1
문서 도구
문서 보기
이전 판
역링크
맨 위로