mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-08-04 12:30:11 +03:00
Use new parse_page_number method in paginate_queryset.
Additionally remove duplicate page number validation.
This commit is contained in:
parent
b01152e961
commit
e5e1bd1ad9
|
@ -167,16 +167,11 @@ class GenericAPIView(views.APIView):
|
||||||
|
|
||||||
paginator = self.paginator_class(queryset, page_size,
|
paginator = self.paginator_class(queryset, page_size,
|
||||||
allow_empty_first_page=self.allow_empty)
|
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_number = self.parse_page_number()
|
||||||
page = page_kwarg or page_query_param or 1
|
if page_number == -1:
|
||||||
try:
|
page_number = paginator.num_pages
|
||||||
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."))
|
|
||||||
try:
|
try:
|
||||||
page = paginator.page(page_number)
|
page = paginator.page(page_number)
|
||||||
except InvalidPage as e:
|
except InvalidPage as e:
|
||||||
|
|
Loading…
Reference in New Issue
Block a user