Use new parse_page_number method in paginate_queryset.

Additionally remove duplicate page number validation.
This commit is contained in:
Andrey Antukh 2014-04-21 12:54:53 +02:00
parent b01152e961
commit e5e1bd1ad9

View File

@ -167,16 +167,11 @@ class GenericAPIView(views.APIView):
paginator = self.paginator_class(queryset, page_size,
allow_empty_first_page=self.allow_empty)
page_kwarg = self.kwargs.get(self.page_kwarg)
page_query_param = self.request.QUERY_PARAMS.get(self.page_kwarg)
page = page_kwarg or page_query_param or 1
try:
page_number = paginator.validate_number(page)
except InvalidPage:
if page == 'last':
page_number = paginator.num_pages
else:
raise Http404(_("Page is not 'last', nor can it be converted to an int."))
page_number = self.parse_page_number()
if page_number == -1:
page_number = paginator.num_pages
try:
page = paginator.page(page_number)
except InvalidPage as e: