TypeError: объект типа 'Listeningfilter' не имеет len()

эта ошибка появляется при использовании django-filter с пагинацией.

это мой код filter.py, view.py. Мне нужно добавить пагинацию к django-фильтру, чтобы отображать данные в html-таблице. ошибка проявляется в следующем Listening_filter = paginator.get_page(page_number) line.

class Listeningfilter(django_filters.FilterSet):
    listentime = django_filters.DateFromToRangeFilter(
        label='By Date Range',
        method='filter_by_range',
        widget=RangeWidget(attrs={'class': 'datepicker', 'type': 'date'})
    )
    class Meta:
        model = Listening
        fields = [
            'listentime',
            'serviceshortcode',
        ]
    def filter_by_range(self, queryset, name, value):
        listenTime_from = value.listenTime_from
        listenTime_to = value.listenTime_to
        return queryset.filter(transaction_time__gte=listenTime_from, transaction_time__lte=listenTime_to)

def listeningReportView(request):
    Listening_filter = ''
    form = ListeningSearchForm(request.POST or None) 
    if request.method == 'POST':
        listenTime_from = request.POST.get('listenTime_from')
        listenTime_to = request.POST.get('listenTime_to')
        serviceCode = request.POST.get('serviceCode')
        Listening_filter = Listeningfilter(
            request.GET,
            queryset = Listening.objects.filter(listentime__lte=listenTime_to, listentime__gte=listenTime_from,
            serviceshortcode=serviceCode).order_by('listeningid'),
        )
        # pagination
        paginator = Paginator(Listening_filter , 2)
        page_number = request.GET.get('page')
        try:
            Listening_filter = paginator.get_page(page_number)
        except EmptyPage:
            Listening_filter = paginator.page(paginator.num_pages)
      
        if not Listening_filter:
            messages.error(request, "no data availabe")
        
    context = {
        'form': form,
        'Listening_filter': Listening_filter,
    }
    return render(request, 'charge/listening.html', context)

Вернуться на верх