Функция не имеет атрибута все
Я получаю эту ошибку атрибута (функция не имеет атрибута all), когда я нажимаю на вопрос в браузере после запуска моего сервера. Я много раз просматривал код, но так и не смог найти ошибку. View.py
class IndexView(generic.ListView):
template_name ='pulls/index.html'
context_object_name = 'latest_question_list'
def get_queryset(self):
"""
Return the last five published questions (not including those set to be
published in the future).
"""
return Question.objects.filter(pub_date__lte=timezone.now()).order_by('-pub_date')[:5]
#Detail Function
class DetailView(generic.DetailView):
model = Question
template_name ='pulls/detail.html'
def queryset(self):
"""
Excludes any questions that aren't published yet.
"""
return Question.objects.filter(pub_date__lte=timezone.now())
Основанный на doc, generic.DetailView
наследует методы и атрибуты от 5 представлений, включая SingleObjectTemplateResponseMixin
и BaseDetailView
.
BaseDetailView
- базовое представление для отображения одного объекта... .
Итак, если вы показываете более одного объекта, лучше не использовать DetailView
. В противном случае, как написано в code, вы должны переопределить self.get_object()
.