【发布时间】:2021-06-28 07:14:25
【问题描述】:
我有一个关于在 Django restframework 中使用分页转到特定页面的问题。 (数据需要渲染成HTML)
例子:
模型.py
class Book(models.Model):
title = models.CharField(max_length=30)
author = models.CharField(max_length=30)
views.py
class BookListView(viewsets.ModelViewSet):
permission_classes = (AllowAny, )
template_name = 'booklist.html'
queryset = Book.objects.all()
renderer_classes = [TemplateHTMLRenderer]
pagination_class = BookPagination
serializer_class = BookSerializer
def list(self, request):
queryset = Book.objects.all()
serializer = ProtocolSerializer(queryset, many=True)
page = self.paginate_queryset(serializer.data)
return self.get_paginated_response(page)
我可以使用上面的代码显示分页项目。 HTML 中有下一个和上一个链接。 但是,我需要像 [1,2,3,....] 这样的页面列表,而不仅仅是下一个和上一个。 我只需单击按钮 3 即可查看第 3 页上的数据。 我需要一些步骤来做到这一点。
1:检索目标页码(我不知道怎么做)
2:获取该页面的数据
3:呈现为 HTML
我希望有人可以帮助我。
【问题讨论】:
-
超出范围的问题:您正在使用rest_framework 来呈现html?
-
我认为你需要使用带有分页的过滤器stackoverflow.com/questions/63904087/…>
标签: python django pagination