Extract is_export and paginate_by configuration to SpreadsheetExportMixin

pull/10626/head
Sage Abdullah 2023-07-03 12:22:15 +01:00
rodzic 45ab2630ef
commit a2487fe6d9
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: EB1A33CC51CC0217
3 zmienionych plików z 9 dodań i 4 usunięć

Wyświetl plik

@ -154,6 +154,15 @@ class SpreadsheetExportMixin:
export_buttons_template_name = "wagtailadmin/shared/export_buttons.html"
def setup(self, request, *args, **kwargs):
super().setup(request, *args, **kwargs)
self.is_export = request.GET.get("export") in self.FORMATS
def get_paginate_by(self, queryset):
if self.is_export:
return None
return super().get_paginate_by(queryset)
def get_filename(self):
"""Gets the base filename for the exported spreadsheet, without extensions"""
return "spreadsheet-export"

Wyświetl plik

@ -20,9 +20,7 @@ class ReportView(SpreadsheetExportMixin, IndexView):
def get(self, request, *args, **kwargs):
self.filters, self.object_list = self.get_filtered_queryset()
self.is_export = self.request.GET.get("export") in self.FORMATS
if self.is_export:
self.paginate_by = None
self.object_list = self.decorate_paginated_queryset(self.object_list)
return self.as_spreadsheet(self.object_list, self.request.GET.get("export"))
else:

Wyświetl plik

@ -165,9 +165,7 @@ class SubmissionsListView(SpreadsheetExportMixin, ListView):
if not get_forms_for_user(request.user).filter(pk=self.form_page.id).exists():
raise PermissionDenied
self.is_export = self.request.GET.get("export") in self.FORMATS
if self.is_export:
self.paginate_by = None
data_fields = self.form_page.get_data_fields()
# Set the export fields and the headings for spreadsheet export
self.list_export = [field for field, label in data_fields]