Update pagination behaviour on page explorer view to match Django standard

pull/10533/head
Matt Westcott 2023-06-10 01:26:06 +01:00
rodzic 8422c38ff9
commit 5e2597cb40
2 zmienionych plików z 8 dodań i 15 usunięć

Wyświetl plik

@ -228,11 +228,7 @@ class TestPageExplorer(WagtailTestUtils, TestCase):
)
# Check response
self.assertEqual(response.status_code, 200)
self.assertTemplateUsed(response, "wagtailadmin/pages/index.html")
# Check that we got page one
self.assertEqual(response.context["pages"].number, 1)
self.assertEqual(response.status_code, 404)
def test_pagination_out_of_range(self):
self.make_pages()
@ -242,14 +238,7 @@ class TestPageExplorer(WagtailTestUtils, TestCase):
)
# Check response
self.assertEqual(response.status_code, 200)
self.assertTemplateUsed(response, "wagtailadmin/pages/index.html")
# Check that we got the last page
self.assertEqual(
response.context["pages"].number,
response.context["pages"].paginator.num_pages,
)
self.assertEqual(response.status_code, 404)
@override_settings(USE_L10N=True, USE_THOUSAND_SEPARATOR=True)
def test_no_thousand_separators_in_bulk_action_checkbox(self):

Wyświetl plik

@ -1,6 +1,7 @@
from django.conf import settings
from django.core.paginator import Paginator
from django.core.paginator import InvalidPage, Paginator
from django.db.models import Count
from django.http import Http404
from django.shortcuts import get_object_or_404, redirect
from django.template.response import TemplateResponse
from django.urls import reverse
@ -90,7 +91,10 @@ def index(request, parent_page_id=None):
# Pagination
if do_paginate:
paginator = Paginator(pages, per_page=50)
pages = paginator.get_page(request.GET.get("p"))
try:
pages = paginator.page(request.GET.get("p", 1))
except InvalidPage:
raise Http404
show_ordering_column = request.GET.get("ordering") == "ord"