Пагинация не работает с дополнительным контекстом в Django ListView

Я пытаюсь создать простую пагинацию через запрос отфильтрованных экземпляров модели Need. Проблема в том, что пагинация не работает вообще, и я предполагаю, что это происходит из-за лишнего контента. Вот мой текущий вид, который показывает пагинацию на фронтенде как пустой div:

class CategoryNeeds(ListView):
    model = Need
    template_name = "volunteering/category_needs.html"
    paginate_by = 1
    context_object_name = "needs"

    def get_queryset(self):
        return Need.objects.filter(category__name=self.kwargs["name"].capitalize())

    def get(self, request, *args, **kwargs):
        self.object_list = self.get_queryset()
        category = Category.objects.get(name=kwargs["name"].capitalize())

        self.extra_context = {
            "category": category,
            "needs": self.object_list
        }

        return self.render_to_response(self.extra_context)

А вот шаблон:

Причина, по которой я думаю, что проблема заключается в дополнительном содержимом, заключается в том, что этот вид прекрасно работает с пагинацией:

class AllNeeds(ListView):
    model = Need
    context_object_name = "needs"
    paginate_by = 3

Кто-нибудь может объяснить, почему моя пагинация не работает? Буду очень благодарен за любой ответ!

Да, похоже, что вы перекрываете нормальный поток django, который добавляет контекст, попробуйте это:

class CategoryNeeds(ListView):
    model = Need
    template_name = "volunteering/category_needs.html"
    paginate_by = 1

    def get_queryset(self):
        return Need.objects.filter(category__name=self.kwargs["name"].capitalize())

    def get(self, request, *args, **kwargs):
        self.object_list = self.get_queryset()
        category = Category.objects.get(name=kwargs["name"].capitalize())

        context = self.get_context_data()
        context['category'] = category

        return self.render_to_response(context)
Вернуться на верх