From 334f0cd03f456c90b8856df5cc7bfc119211230d Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Sat, 13 Apr 2019 22:25:43 -0400 Subject: [PATCH] Remove queryset slicing hack from view Signed-off-by: Roberto Rosario --- HISTORY.rst | 2 ++ docs/releases/3.2.rst | 2 ++ mayan/apps/documents/views/document_views.py | 15 ++++++--------- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/HISTORY.rst b/HISTORY.rst index ec3b7b1a24..4b07a9c71c 100644 --- a/HISTORY.rst +++ b/HISTORY.rst @@ -43,6 +43,8 @@ * Move the navigation and authentication templates to their respective apps. * Add dashboard app. +* Remove queryset slicing hack from the Document list view. + And slice the Recently Added Document queryset itself. 3.1.11 (2019-04-XX) =================== diff --git a/docs/releases/3.2.rst b/docs/releases/3.2.rst index 6a47f5b612..0292318d11 100644 --- a/docs/releases/3.2.rst +++ b/docs/releases/3.2.rst @@ -67,6 +67,8 @@ Other changes * Move the navigation and authentication templates to their respective apps. * Add dashboard app. +* Remove queryset slicing hack from the Document list view. + And slice the Recently Added Document queryset itself. Removals diff --git a/mayan/apps/documents/views/document_views.py b/mayan/apps/documents/views/document_views.py index e28e0c5200..30d9c58e48 100644 --- a/mayan/apps/documents/views/document_views.py +++ b/mayan/apps/documents/views/document_views.py @@ -66,7 +66,6 @@ logger = logging.getLogger(__name__) class DocumentListView(SingleObjectListView): object_permission = permission_document_view - queryset_slice = None def get_context_data(self, **kwargs): try: @@ -103,11 +102,7 @@ class DocumentListView(SingleObjectListView): } def get_object_list(self): - queryset = self.get_document_queryset().filter(is_stub=False) - if self.queryset_slice: - return queryset.__getitem__(slice(*self.queryset_slice)) - else: - return queryset + return self.get_document_queryset().filter(is_stub=False) class DocumentDocumentTypeEditView(MultipleObjectFormActionView): @@ -812,10 +807,12 @@ class RecentAccessDocumentListView(DocumentListView): class RecentAddedDocumentListView(DocumentListView): - queryset_slice = (0, setting_recent_added_count.value) - def get_document_queryset(self): - return Document.objects.order_by('-date_added') + return Document.objects.filter( + pk__in=Document.objects.order_by('-date_added')[ + :setting_recent_added_count.value + ].values('pk') + ). order_by('-date_added') def get_extra_context(self): context = super(RecentAddedDocumentListView, self).get_extra_context()