클래스 기반 뷰를 이해할 수 없어 예를 들어 설명하려고합니다.Django 클래스 기반 뷰 예제
#urls.py
url(r'^(?P<langcode>[a-zA-Z-]+/about/$', about, name='about')
#views.py
def about(request, langcode):
languages = Language.objects.values_list('code', flat=True)
language = get_object_or_404(Language, pk=langcode)
return render(request, 'about.html', {
'languages': languages,
'language': language
})
가 나는 또한 about
의 첫 2 선 포함 된 일부 다른 기능 전망이 : 여기에 지금까지 무엇을 가지고 그래서
languages = Language.objects.values_list('code', flat=True)
language = get_object_or_404(Language, pk=langcode)
, 내가 지금 무엇을 원하는 것은 :
는 만들
class BaseView
(또는 당신이 그것을 호출하려는 그러나)django.generic.views
에서 뭔가를 확장하는과 0을 결정하는langcode
입력 파라미터생성에 기초하여 컨텍스트 12,및
languages
파라미터class AboutView(BaseView)
(따라서 연장BaseView
) 어떤 식 으로든 렌더링에 사용되는 템플릿 이름about.html
을 정의한다.I 것 더 또한
BaseView
을 연장AboutView
에 simillar하지만, 어느 것이region
불리는 하나 개 이상의 컨텍스트 파라미터는langcode
입력 파라미터 에서뿐만 따라 설정되는, 다른 클래스에 기초하여 뷰를
수 누군가 나에게 정확히이 물건을 코딩하는 법을 보여 줍니까?
이당신은 먼저 TemplateView 일반적인 뷰 사용하여 일반적인 논리를 정의 : : 여기 당신이 원하는 것을 달성 할 수있는 간단한 방법 당신에게