awx/awx/api/pagination.py
2016-03-29 15:19:17 -04:00

26 lines
853 B
Python

# Copyright (c) 2015 Ansible, Inc.
# All Rights Reserved.
# Django REST Framework
from rest_framework import pagination
from rest_framework.utils.urls import replace_query_param
class Pagination(pagination.PageNumberPagination):
page_size_query_param = 'page_size'
def get_next_link(self):
if not self.page.has_next():
return None
url = self.request and self.request.get_full_path() or ''
page_number = self.page.next_page_number()
return replace_query_param(url, self.page_query_param, page_number)
def get_previous_link(self):
if not self.page.has_previous():
return None
url = self.request and self.request.get_full_path() or ''
page_number = self.page.previous_page_number()
return replace_query_param(url, self.page_query_param, page_number)