Propery filter documents queryset on CBV that return a list of documents.

This commit is contained in:
Roberto Rosario
2015-07-01 17:01:41 -04:00
parent f0cfe314f0
commit 23fda5561e
5 changed files with 15 additions and 6 deletions

View File

@@ -27,7 +27,8 @@ from .permissions import (
class CheckoutListView(DocumentListView):
queryset = DocumentCheckout.objects.checked_out_documents()
def get_document_queryset(self):
return DocumentCheckout.objects.checked_out_documents()
extra_context = {
'title': _('Documents checked out'),

View File

@@ -67,7 +67,13 @@ class DocumentListView(SingleObjectListView):
'title': _('All documents'),
}
object_permission = permission_document_view
queryset = Document.objects.all()
def get_document_queryset(self):
return Document.objects.all()
def get_queryset(self):
self.queryset = self.get_document_queryset()
return super(DocumentListView, self).get_queryset()
class DocumentPageListView(ParentChildListView):
@@ -96,7 +102,7 @@ class RecentDocumentListView(DocumentListView):
'title': _('Recent documents'),
}
def get_queryset(self):
def get_document_queryset(self):
return RecentDocument.objects.get_for_user(self.request.user)

View File

@@ -134,7 +134,7 @@ class FolderDetailView(DocumentListView):
return folder
def get_queryset(self):
def get_document_queryset(self):
return self.get_folder().documents.all()
def get_extra_context(self):

View File

@@ -38,7 +38,9 @@ class MissingRequiredMetadataDocumentListView(DocumentListView):
'hide_links': True,
'title': _('Documents missing required metadata'),
}
queryset = Document.objects.filter(document_type__metadata__required=True, metadata__value__isnull=True)
def get_document_queryset(self):
return Document.objects.filter(document_type__metadata__required=True, metadata__value__isnull=True)
def metadata_edit(request, document_id=None, document_id_list=None):

View File

@@ -215,7 +215,7 @@ class TagTaggedItemListView(DocumentListView):
def get_tag(self):
return get_object_or_404(Tag, pk=self.kwargs['pk'])
def get_queryset(self):
def get_document_queryset(self):
return self.get_tag().documents.all()
def get_extra_context(self):