我有一个视图,它继承自ListAPIView并显示一个对象列表。出于性能原因,我正在尝试实现分页。所以:
from rest_framework.pagination import PageNumberPagination
class LargeResultsSetPagination(PageNumberPagination):
page_size = 2
page_size_query_param = 'page_size'
max_page_size = 2
class RaceEventListView(CallSerializerEagerLoadingMixin, ListAPIView):
serializer_class = RaceEventListSerializer
queryset = RaceEvent.objects.all()
pagination_class = LargeResultsSetPagination
关注文档http://www.django-rest-framework.org/api-guide/pagination/
没有分页,只会进行一次查询。 Select * from raceevent
通过分页进行两次查询。 Select * from raceevent
和Select * from raceevent LIMIT 2
。
increment()
结果,我无法取得更好的表现。 我应该怎么做,以便在使用分页时将查询限制为1
答案 0 :(得分:0)
第二个查询用于计算对象的总量。响应的json对象具有属性count ...为了计算此值,将进行查询。