Remove duplicate RevisionMixin

This commit is contained in:
2022-01-24 21:06:43 +00:00
parent 79c90ac92c
commit f243a589fa
3 changed files with 4 additions and 35 deletions

View File

@@ -17,6 +17,7 @@ from django.utils import timezone
from django.utils.functional import cached_property from django.utils.functional import cached_property
from reversion import revisions as reversion from reversion import revisions as reversion
from reversion.models import Version from reversion.models import Version
from versioning.versioning import RevisionMixin
class Profile(AbstractUser): class Profile(AbstractUser):
@@ -69,39 +70,6 @@ class Profile(AbstractUser):
return self.name return self.name
class RevisionMixin:
@property
def is_first_version(self):
versions = Version.objects.get_for_object(self)
return len(versions) == 1
@property
def current_version(self):
version = Version.objects.get_for_object(self).select_related('revision').first()
return version
@property
def last_edited_at(self):
version = self.current_version
if version is None:
return None
return version.revision.date_created
@property
def last_edited_by(self):
version = self.current_version
if version is None:
return None
return version.revision.user
@property
def current_version_id(self):
version = self.current_version
if version is None:
return None
return f"V{version.pk} | R{version.revision.pk}"
class Person(models.Model, RevisionMixin): class Person(models.Model, RevisionMixin):
name = models.CharField(max_length=50) name = models.CharField(max_length=50)
phone = models.CharField(max_length=15, blank=True, default='') phone = models.CharField(max_length=15, blank=True, default='')

View File

@@ -1,8 +1,9 @@
from RIGS.models import RevisionMixin, Profile from RIGS.models import Profile
from reversion import revisions as reversion from reversion import revisions as reversion
from django.db import models from django.db import models
from django.urls import reverse from django.urls import reverse
from django.utils.safestring import mark_safe from django.utils.safestring import mark_safe
from versioning.versioning import RevisionMixin
@reversion.register(for_concrete_model=False, fields=[], follow=["qualifications_obtained", "level_qualifications"]) @reversion.register(for_concrete_model=False, fields=[], follow=["qualifications_obtained", "level_qualifications"])

View File

@@ -36,7 +36,7 @@ class RevisionMixin:
version = self.current_version version = self.current_version
if version is None: if version is None:
return None return None
return "V{0} | R{1}".format(version.pk, version.revision.pk) return f"V{version.pk} | R{version.revision.pk}"
@property @property
def date_created(self): def date_created(self):