1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
from collections import OrderedDict
from rest_framework import pagination
from rest_framework.response import Response
class GeoJsonPagination(pagination.PageNumberPagination):
"""
A geoJSON implementation of a pagination serializer.
"""
page_size_query_param = 'page_size'
def get_paginated_response(self, data):
return Response(
OrderedDict(
[
('type', 'FeatureCollection'),
('count', self.page.paginator.count),
('next', self.get_next_link()),
('previous', self.get_previous_link()),
('features', data['features']),
]
)
)
|