kopia lustrzana https://github.com/wagtail/wagtail
Extract is_export and paginate_by configuration to SpreadsheetExportMixin
rodzic
45ab2630ef
commit
a2487fe6d9
|
@ -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"
|
||||
|
|
|
@ -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:
|
||||
|
|
|
@ -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]
|
||||
|
|
Ładowanie…
Reference in New Issue