Fix #141 -- Caching improvements for ticket outputs

This commit is contained in:
Raphael Michel
2016-11-29 15:52:16 +01:00
parent a8be2d5f24
commit fdbe71ff63
5 changed files with 22 additions and 4 deletions

View File

@@ -16,7 +16,7 @@ from django.views.generic.detail import SingleObjectMixin
from pretix.base.forms import I18nModelForm
from pretix.base.models import (
Event, EventPermission, Item, ItemVariation, User,
CachedTicket, Event, EventPermission, Item, ItemVariation, User,
)
from pretix.base.services import tickets
from pretix.base.services.invoices import build_preview_invoice_pdf
@@ -450,6 +450,9 @@ class TicketSettings(EventPermissionRequiredMixin, FormView):
for k in provider.form.changed_data
}
)
CachedTicket.objects.filter(
order_position__order__event=self.request.event, provider=provider.identifier
).delete()
else:
success = False
form = self.get_form(self.get_form_class())

View File

@@ -18,8 +18,8 @@ from django.views.generic.edit import DeleteView
from pretix.base.forms import I18nFormSet
from pretix.base.models import (
Item, ItemCategory, ItemVariation, Order, Question, QuestionAnswer,
QuestionOption, Quota,
CachedTicket, Item, ItemCategory, ItemVariation, Order, Question,
QuestionAnswer, QuestionOption, Quota,
)
from pretix.control.forms.item import (
CategoryForm, ItemCreateForm, ItemUpdateForm, ItemVariationForm,
@@ -787,6 +787,7 @@ class ItemUpdateGeneral(ItemDetailMixin, EventPermissionRequiredMixin, UpdateVie
for k in form.changed_data
}
)
CachedTicket.objects.filter(order_position__item=self.item).delete()
return super().form_valid(form)