Django分页显示了从第二页开始的所有对象

时间:2018-08-05 09:48:23

标签: django

我以标准方式进行分页,但是从页面的第二页开始,所有对象都是可见的。随后的所有页面都包含相同的数据。 如果我从其他任何页面返回到第一页,那么我可以看到上面的所有现有对象

views.py

pip install quandl

template.html

 
def viewtrainers(request, slug):
    trainers_list = Profile.objects.filter(city__slug = slug)
    page = request.GET.get('page')
    paginator = Paginator(trainers_list, 10)
    try:
        trainers = paginator.page(page)
    except PageNotAnInteger:
        trainers = paginator.page(1)
    except EmptyPage:
        trainers = paginator.page(paginator.num_pages)

    return render(request, "trainers.html", {'trainers':trainers})

1 个答案:

答案 0 :(得分:0)

按特定参数对数据进行排序时,分页有效。那就是分页实际上有意义的时候,否则,Django不知道要返回什么数据,而是将其复制到请求周围。

因此,在第一行中,您需要执行以下操作:

trainers_list = Profile.objects.filter(city__slug = slug).order_by('x')

这里xProfile对象的属性,您可以在此基础上对数据进行实际排序。