from django.core.paginator import Paginator,PageNotAnInteger,EmptyPage def publishArticles(request): if(request.method=="GET"): page = request.GET['page'] pageSize = 10 listArticle = Article.objects.all() paginator = Paginator(listArticle, pageSize) # 每页显示10条 response = {} response['total'] = paginator.count # 获取总页数 try: articles = paginator.page(page) # paginator.page(page)获取第page页 except PageNotAnInteger: articles = paginator.page(1) # 如果请求页数不是整数,返回第一页 except EmptyPage: articles = paginator.page(paginator.num_pages) # 如果请求的页数不在范围内则返回最后一页 print(articles) response['list'] = json.loads(serializers.serialize('json',articles)) return JsonResponse(response)
分页查询按这个套路来就行了,如果想了解更多可以百度paginator