From 1f80f2daa6eeea44bc1fb3ce79d4e88cc0ac8632 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laura=20Kl=C3=BCnder?= Date: Thu, 30 Nov 2017 15:52:02 +0100 Subject: [PATCH] remove editor.utils because nearly nothing in it was used --- src/c3nav/editor/models/changedobject.py | 3 +- src/c3nav/editor/models/changeset.py | 3 +- src/c3nav/editor/utils.py | 36 ------------------------ src/c3nav/editor/views/changes.py | 2 +- src/c3nav/editor/wrappers.py | 5 +++- 5 files changed, 7 insertions(+), 42 deletions(-) delete mode 100644 src/c3nav/editor/utils.py diff --git a/src/c3nav/editor/models/changedobject.py b/src/c3nav/editor/models/changedobject.py index 67d0414d..646870cb 100644 --- a/src/c3nav/editor/models/changedobject.py +++ b/src/c3nav/editor/models/changedobject.py @@ -7,8 +7,7 @@ from django.db import models from django.db.models import DecimalField, Field from django.utils.translation import ugettext_lazy as _ -from c3nav.editor.utils import is_created_pk -from c3nav.editor.wrappers import ModelInstanceWrapper +from c3nav.editor.wrappers import ModelInstanceWrapper, is_created_pk from c3nav.mapdata.fields import I18nField, JSONField from c3nav.mapdata.models.locations import LocationRedirect diff --git a/src/c3nav/editor/models/changeset.py b/src/c3nav/editor/models/changeset.py index 8ce4d212..847d0d05 100644 --- a/src/c3nav/editor/models/changeset.py +++ b/src/c3nav/editor/models/changeset.py @@ -18,8 +18,7 @@ from django.utils.translation import ugettext_lazy as _ from django.utils.translation import ungettext_lazy from c3nav.editor.models.changedobject import ApplyToInstanceError, ChangedObject -from c3nav.editor.utils import is_created_pk -from c3nav.editor.wrappers import ModelInstanceWrapper, ModelWrapper +from c3nav.editor.wrappers import ModelInstanceWrapper, ModelWrapper, is_created_pk from c3nav.mapdata.models import LocationSlug, MapUpdate from c3nav.mapdata.models.locations import LocationRedirect from c3nav.mapdata.utils.cache.changes import changed_geometries diff --git a/src/c3nav/editor/utils.py b/src/c3nav/editor/utils.py deleted file mode 100644 index 80ca8819..00000000 --- a/src/c3nav/editor/utils.py +++ /dev/null @@ -1,36 +0,0 @@ -from typing import Union - -from django.db import models - - -def is_created_pk(pk): - return isinstance(pk, str) and pk.startswith('c') and pk[1:].isnumeric() - - -def get_current_obj(model, pk, only_field=None): - if is_created_pk(pk): - return model() - if only_field is not None: - return model.objects.only(only_field).get(pk=pk) - return model.objects.get(pk=pk) - - -def get_field_value(obj, field: Union[str, models.Field]): - lang = None - if isinstance(field, str): - name = field - model = type(obj) - if '__i18n__' in name: - orig_name, i18n, lang = name.split('__') - field = model._meta.get_field(orig_name) - else: - field = model._meta.get_field(name) - else: - name = field.name - try: - current_value = getattr(obj, field.attname) - except AttributeError: - current_value = field.to_prep_value(getattr(obj, field.name)) - if lang: - current_value = current_value.get(lang, '') - return current_value diff --git a/src/c3nav/editor/views/changes.py b/src/c3nav/editor/views/changes.py index 06a6c70a..0a67cf8e 100644 --- a/src/c3nav/editor/views/changes.py +++ b/src/c3nav/editor/views/changes.py @@ -13,8 +13,8 @@ from django.utils.translation import get_language_info from c3nav.editor.forms import ChangeSetForm, RejectForm from c3nav.editor.models import ChangeSet -from c3nav.editor.utils import is_created_pk from c3nav.editor.views.base import sidebar_view +from c3nav.editor.wrappers import is_created_pk from c3nav.mapdata.models.locations import LocationRedirect, LocationSlug diff --git a/src/c3nav/editor/wrappers.py b/src/c3nav/editor/wrappers.py index 5369d868..9c28b5e7 100644 --- a/src/c3nav/editor/wrappers.py +++ b/src/c3nav/editor/wrappers.py @@ -9,7 +9,6 @@ from django.db import models from django.db.models import FieldDoesNotExist, Manager, ManyToManyRel, Prefetch, Q from django.utils.functional import cached_property -from c3nav.editor.utils import is_created_pk from c3nav.mapdata.utils.models import get_submodels @@ -174,6 +173,10 @@ class ModelWrapper(BaseWrapper): return '' +def is_created_pk(pk): + return isinstance(pk, str) and pk.startswith('c') and pk[1:].isnumeric() + + class ModelInstanceWrapper(BaseWrapper): """ Wraps a model instance. Don't use this directly, call a ModelWrapper instead / use ChangeSet.wrap().