Moved get_first/last_link methods out to PageNumberPaginator

This commit is contained in:
Steve Lacey 2015-02-27 17:43:04 +00:00
parent f3efdce9ed
commit 5f24aeb829

View File

@ -287,12 +287,11 @@ class PageNumberPagination(BasePagination):
return self.paginate_by return self.paginate_by
def get_next_link(self): def get_first_link(self):
if not self.page.has_next(): if not self.page.has_previous():
return None return None
url = self.request.build_absolute_uri() url = self.request.build_absolute_uri()
page_number = self.page.next_page_number() return remove_query_param(url, self.page_query_param)
return replace_query_param(url, self.page_query_param, page_number)
def get_previous_link(self): def get_previous_link(self):
if not self.page.has_previous(): if not self.page.has_previous():
@ -303,6 +302,20 @@ class PageNumberPagination(BasePagination):
return remove_query_param(url, self.page_query_param) return remove_query_param(url, self.page_query_param)
return replace_query_param(url, self.page_query_param, page_number) return replace_query_param(url, self.page_query_param, page_number)
def get_next_link(self):
if not self.page.has_next():
return None
url = self.request.build_absolute_uri()
page_number = self.page.next_page_number()
return replace_query_param(url, self.page_query_param, page_number)
def get_last_link(self):
if not self.page.has_next():
return None
url = self.request.build_absolute_uri()
page_number = self.page.paginator.num_pages
return replace_query_param(url, self.page_query_param, page_number)
def get_html_context(self): def get_html_context(self):
base_url = self.request.build_absolute_uri() base_url = self.request.build_absolute_uri()