【问题标题】:Pagination with lookup index in Django Rest Framework在 Django Rest Framework 中使用查找索引进行分页
【发布时间】:2020-12-29 08:27:58
【问题描述】:
我正在尝试实现分页,能够根据用户点击的项目跳转到不同的页面。
例如,我在屏幕右侧的分页表中有一个项目列表,所有项目显示在屏幕左侧的地图上.用户单击左侧的项目,它会自动将右侧的视图移动到包含该项目的页面
我不知道如何开始实现这样的东西,我想过为每个视图发出 2 个不同的请求,但没有办法保持 2 个视图之间的耦合
我正在考虑基于页面的分页,但正在努力弄清楚如何维护指针。
有没有人暗示从哪里开始实施这个?
谢谢
【问题讨论】:
标签:
django-rest-framework
pagination
【解决方案1】:
你可以这样做分页
分页.py
from rest_framework import pagination
class CustomPagination(pagination.PageNumberPagination):
def get_paginated_response(self, data):
return Response({
'links': {
'next': self.get_next_link(),
'previous': self.get_previous_link()
},
'count': self.page.paginator.count,
'results': data
})
settings.py
REST_FRAMEWORK = {
'DEFAULT_PAGINATION_CLASS': 'path.core.pagination.CustomPagination',
'PAGE_SIZE': 100
}
观看次数
class UserList(generics.ListCreateAPIView):
queryset = User.objects.all()
serializer_class = UserSerializer
permission_classes = [IsAdminUser]
def list(self, request):
# Note the use of `get_queryset()` instead of `self.queryset`
queryset = self.get_queryset()
serializer = UserSerializer(queryset, many=True)
return Response(serializer.data)