2016-07-10 2 views
0

Я следую учебнику django на веб-сайте, и я застрял в использовании общего представления.Django: Generic View not working

views.py

class DetailView(generic.DetailView): 
    model = Questions 
    template_name = 'tolls/detail.html' 

urls.py

url(r'^(?P<pk>[0-9]+)/$', views.DetailView.as_view(), name='detail') 

detail.html

<h1> {{question.question_text}} </h1> 

Ничто не отображается в моем details.html

Если я не» t использовать общий вид, он работает wit ч ниже функции и URL

view.py

def detial(request, question_id): question = get_object_or_404(Questions, pk=question_id) return render(request, 'tolls/detail.html', {'question': question})

urls.py

`url(r'^(?P<question_id>[0-9]+)/$', views.detial, name='detail'),` 

ответ

1

имя по умолчанию для доступа к экземпляру модели является object. Поэтому либо используйте {{ object.question_text }} в своем шаблоне, либо укажите имя в своем классе вида, используя context_object_name:

class DetailView(generic.DetailView): 
    model = Questions 
    template_name = 'tolls/detail.html' 
    context_object_name = 'question'