2016-11-10 63 views
0

我有一个视图继承自ListAPIView并显示对象列表。出于性能原因,我试图实现分页。所以:Django Rest框架分页性能问题

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 raceeventSelect * from raceevent LIMIT 2

因此,我无法取得更好的表现。 我应该怎么做,以限制为1时使用分页查询

+0

你在哪里看到两个查询正在运行? – Sayse

+0

我正在使用django-debug-panel –

回答

0

第二个查询是用于计算对象的总量。响应的json对象具有属性计数...为了计算该值,进行查询。