Django-filter AssertionError: Невозможно фильтровать запрос после того, как был взят фрагмент

Я использую Django-фильтр, я хочу нарезать строки, только первые 75 строк:

def hist_view_render(request):
    all_obj =  RunStats.objects.all().order_by('-create_dttm')[:75]
    hist_filter = RunStatsFilter(request.GET, queryset=all_obj)
    paginator= Paginator(hist_filter.qs, 15)
    page = request.GET.get('page')

    try:
        response = paginator.page(page)
    except PageNotAnInteger:
        response = paginator.page(1)
    except EmptyPage:
        response = paginator.page(paginator.num_pages)

    context =  {'response': response,'filter': hist_filter}

    return render(request, 'runstat_hist.html',context)

Я пробовал ставить [:75] в разных местах, но всегда получаю ошибку:

  Cannot filter a query once a slice has been taken

Единственный способ, который работает, это нарезать его в шаблоне, но я хочу найти способ нарезать его в views.py.

Любой друг может помочь?

Проблема возникает, когда пагинатор разрезает queryset, чтобы получить список объектов для страницы. Вы можете передать пагинатору список, чтобы при нарезке не возникала ошибка

all_obj =  RunStats.objects.all().order_by('-create_dttm')
hist_filter = RunStatsFilter(request.GET, queryset=all_obj)
paginator = Paginator(list(hist_filter.qs[:75]), 15)
Вернуться на верх