From 2554c7f5fc69b63d3c8b82c1d8a75b016ecac47a Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Tue, 12 Jan 2021 12:38:36 +0100 Subject: [PATCH] Fix error 405 in export form validation --- src/pretix/control/views/orders.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/pretix/control/views/orders.py b/src/pretix/control/views/orders.py index 07437033f..9901be010 100644 --- a/src/pretix/control/views/orders.py +++ b/src/pretix/control/views/orders.py @@ -2055,14 +2055,22 @@ class ExportDoView(EventPermissionRequiredMixin, ExportMixin, AsyncAction, View) def post(self, request, *args, **kwargs): if not self.exporter: messages.error(self.request, _('The selected exporter was not found.')) - return redirect('control:event.orders.export', kwargs={ + return redirect(reverse('control:event.orders.export', kwargs={ 'event': self.request.event.slug, 'organizer': self.request.event.organizer.slug - }) + })) if not self.exporter.form.is_valid(): - messages.error(self.request, _('There was a problem processing your input. See below for error details.')) - return self.get(request, *args, **kwargs) + messages.error( + self.request, + str(_('There was a problem processing your input:')) + ' ' + ', '.join( + ', '.join(l) for l in self.exporter.form.errors.values() + ) + ) + return redirect(reverse('control:event.orders.export', kwargs={ + 'event': self.request.event.slug, + 'organizer': self.request.event.organizer.slug + }) + '?identifier=' + self.exporter.identifier) cf = CachedFile(web_download=True, session_key=request.session.session_key) cf.date = now()