From 249ea3f66575fb1cc4caafd2fca322b268f61e43 Mon Sep 17 00:00:00 2001 From: Adrien Delle Cave Date: Mon, 9 Apr 2018 17:56:38 +0200 Subject: [PATCH] Added pagination in page statuscheck_detail.html --- cabot/cabotapp/views.py | 17 ++++++++++++-- .../cabotapp/statuscheck_detail.html | 23 ++++++++++++++++++- 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/cabot/cabotapp/views.py b/cabot/cabotapp/views.py index 47e3800..319e446 100644 --- a/cabot/cabotapp/views.py +++ b/cabot/cabotapp/views.py @@ -15,6 +15,7 @@ from django.contrib.auth import get_user_model from django.contrib.auth.decorators import login_required from django.contrib.auth.models import User from django.core.exceptions import ValidationError +from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger from django.core.urlresolvers import reverse, reverse_lazy from django.core.validators import URLValidator from django.db import transaction @@ -564,8 +565,20 @@ class StatusCheckDetailView(LoginRequiredMixin, CommonDetailView): def render_to_response(self, context, *args, **kwargs): if context is None: context = {} - context['checkresults'] = self.object.statuscheckresult_set.order_by( - '-time_complete')[:100] + checkresult_list = self.object.statuscheckresult_set.order_by( + '-time_complete').all() + paginator = Paginator(checkresult_list, 25) + + page = self.request.GET.get('page') + try: + checkresults = paginator.page(page) + except PageNotAnInteger: + checkresults = paginator.page(1) + except EmptyPage: + checkresults = paginator.page(paginator.num_pages) + + context['checkresults'] = checkresults + return super(StatusCheckDetailView, self).render_to_response(context, *args, **kwargs) diff --git a/cabot/templates/cabotapp/statuscheck_detail.html b/cabot/templates/cabotapp/statuscheck_detail.html index 87aa8d7..42eb0c0 100644 --- a/cabot/templates/cabotapp/statuscheck_detail.html +++ b/cabot/templates/cabotapp/statuscheck_detail.html @@ -29,7 +29,28 @@

-

Check results

+
+

Check results

+ + {% if checkresults and checkresults.paginator.num_pages > 1 %} + + {% endif %} + +
{% if not checkresults %}