В отношении вопроса, заданного ранее: Аналогичный вопрос, связанный с нумерацией страниц
Я все еще не получаю метаданные (количество, предыдущий и следующий) в ответе.
class LinkHeaderPagination(pagination.PageNumberPagination):
page_size_query_param = 'page_size'
def get_paginated_response(self, data):
next_url = self.get_next_link()
previous_url = self.get_previous_link()
if next_url is not None and previous_url is not None:
link = '<{next_url}>; rel="next", <{previous_url}>; rel="prev"'
elif next_url is not None:
link = '<{next_url}>; rel="next"'
elif previous_url is not None:
link = '<{previous_url}>; rel="prev"'
else:
link = ''
link = link.format(next_url=next_url, previous_url=previous_url)
headers = {'Link': link, 'Count': self.page.paginator.count} if link else {}
return Response(data, headers=headers)
def list(self, request, *args, **kwargs):
queryset= User.objects.all().values_list('name','designation')
queryset=[{'name':i[0],'designation':i[1]} for i in queryset]
serializer=getuserserializer(queryset,many=True)
paginator = LinkHeaderPagination()
page = paginator.paginate_queryset(new_dict, request)
if page is not None:
return paginator.get_paginated_response(page)
return Response(serializer.data)