mirror of
https://github.com/pretix/pretix.git
synced 2026-05-10 16:04:02 +00:00
16 lines
518 B
Python
16 lines
518 B
Python
from django.forms.models import ModelFormMetaclass, BaseModelForm
|
|
from django.utils import six
|
|
from versions.models import Versionable
|
|
|
|
|
|
class VersionedBaseModelForm(BaseModelForm):
|
|
def save(self, commit=True):
|
|
if self.instance.pk is not None and isinstance(self.instance, Versionable):
|
|
if self.has_changed():
|
|
self.instance = self.instance.clone()
|
|
super().save(commit)
|
|
|
|
|
|
class VersionedModelForm(six.with_metaclass(ModelFormMetaclass, VersionedBaseModelForm)):
|
|
pass
|