Django get_object() вызывается много раз
У меня есть модель - Article
, и этот фрагмент кода
class ArticleDetailView(HitCountDetailView):
model = Article
# some code...
def get_object(self):
article = super(ArticleDetailView, self).get_object()
slug = self.kwargs['slug']
article = get_object_or_404(Article, slug=slug)
print(article.some_count.counts)
return article
this code is line printing the value of article.some_count_counts
3 times, it means the function get_object()
is getting called 3 times.
Но почему так? вот в чем мой вопрос.
Просто удалите метод get_object()
.
Django DetailView
сам может получить объекты с полем slug.
Поэтому повторный вызов этой функции является излишним.
поддерживающий документ:
https://docs.djangoproject.com/en/3.2/ref/class-based-views/mixins-single-object/#django.views.generic.detail.SingleObjectMixin.slug_url_kwarg