如何用Django对djangfilter过滤的查询进行分页?

2024-09-27 19:21:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在使用django过滤器应用程序过滤模型。当我试图使用Django的paginator从筛选的查询中分页时,它不起作用。所有结果都放在一页上,尽管页码在底部。当我点击一个不同的页码,结果是未过滤的放在一页上。在

有人知道解决这个问题的办法吗?在

在视图.py在

from .models import Video
from django.shortcuts import render
from .filters import VideoFilter
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger


def search(request):
    video_list = Video.objects.all()
    video_filter = VideoFilter(request.POST, queryset=video_list)
    paginator = Paginator(video_filter.qs, 1)
    page = request.GET.get('page')
    try:
        videos = paginator.page(page)
    except PageNotAnInteger:
        videos = paginator.page(1)
    except EmptyPage:
        videos = paginator.page(paginator.num_pages)

    return render(request, 'search/user_list.html', {'filter': video_filter,'videos':videos})

搜索/用户_列表.html在

^{pr2}$

Tags: djangofromimportrequestvideopagerenderfilter

热门问题