Refactoring

* splits compensation/models.py into subpackage
* renames base objects by adding suffix Mixin
This commit is contained in:
2021-11-16 08:29:18 +01:00
parent 65f02c5111
commit 6dd13179b5
11 changed files with 751 additions and 684 deletions

View File

@@ -22,7 +22,7 @@ from django.utils import timezone
from django.utils.translation import gettext_lazy as _
from konova.contexts import BaseContext
from konova.models import BaseObject, Geometry, RecordableObject
from konova.models import BaseObject, Geometry, RecordableObjectMixin
from konova.settings import DEFAULT_SRID
from konova.utils.message_templates import FORM_INVALID
from user.models import UserActionLogEntry, UserAction
@@ -290,7 +290,7 @@ class SimpleGeomForm(BaseForm):
geometry.geom = self.cleaned_data.get("geom", MultiPolygon(srid=DEFAULT_SRID))
geometry.modified = action
geometry.save()
except (AttributeError) as e:
except AttributeError:
# No geometry or linked instance holding a geometry exist --> create a new one!
geometry = Geometry.objects.create(
geom=self.cleaned_data.get("geom", MultiPolygon(srid=DEFAULT_SRID)),
@@ -446,7 +446,7 @@ class RecordModalForm(BaseModalForm):
self.form_title = _("Unrecord data")
self.form_caption = _("I, {} {}, confirm that this data must be unrecorded.").format(self.user.first_name, self.user.last_name)
if not isinstance(self.instance, RecordableObject):
if not isinstance(self.instance, RecordableObjectMixin):
raise NotImplementedError
def is_valid(self):

View File

@@ -71,7 +71,7 @@ class BaseResource(UuidModel):
"""
try:
self.created.delete()
except (ObjectDoesNotExist, AttributeError) as e:
except (ObjectDoesNotExist, AttributeError):
# Object does not exist anymore - we can skip this
pass
super().delete()
@@ -146,7 +146,7 @@ class BaseObject(BaseResource):
Returns:
"""
if isinstance(self, ShareableObject):
if isinstance(self, ShareableObjectMixin):
return self.users.filter(id=user.id)
else:
return User.objects.none()
@@ -220,7 +220,7 @@ class BaseObject(BaseResource):
return definitions[self.__class__]["template"].format(_str)
class RecordableObject(models.Model):
class RecordableObjectMixin(models.Model):
""" Wraps record related fields and functionality
"""
@@ -289,7 +289,7 @@ class RecordableObject(models.Model):
return ret_log_entry
class CheckableObject(models.Model):
class CheckableObjectMixin(models.Model):
# Checks - Refers to "Genehmigen" but optional
checked = models.OneToOneField(
UserActionLogEntry,
@@ -351,7 +351,7 @@ class CheckableObject(models.Model):
return ret_log_entry
class ShareableObject(models.Model):
class ShareableObjectMixin(models.Model):
# Users having access on this object
users = models.ManyToManyField(User, help_text="Users having access (data shared with)")
access_token = models.CharField(