From f23aaf86bf1daaa5a619c468f51557133451f161 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laura=20Kl=C3=BCnder?= Date: Sun, 24 Dec 2023 16:37:09 +0100 Subject: [PATCH] fix problem with editor and main_point --- src/c3nav/editor/forms.py | 6 +++++- src/c3nav/mapdata/fields.py | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/c3nav/editor/forms.py b/src/c3nav/editor/forms.py index ae54a481..ce5ca358 100644 --- a/src/c3nav/editor/forms.py +++ b/src/c3nav/editor/forms.py @@ -53,7 +53,11 @@ class EditorFormBase(I18nModelFormMixin, ModelForm): # hide geometry widget self.fields['main_point'].widget = HiddenInput() if not creating: - self.initial['main_point'] = mapping(self.instance.main_point) if self.instance.main_point else "" + self.initial['main_point'] = ( + mapping(self.instance.main_point) + if self.instance.main_point and not self.instance.main_point.is_empty + else None + ) if self._meta.model.__name__ == 'Source' and self.request.user.is_superuser: Source = self.request.changeset.wrap_model('Source') diff --git a/src/c3nav/mapdata/fields.py b/src/c3nav/mapdata/fields.py index c21a25b5..30147868 100644 --- a/src/c3nav/mapdata/fields.py +++ b/src/c3nav/mapdata/fields.py @@ -50,7 +50,7 @@ class GeometryField(models.JSONField): return name, path, args, kwargs def from_db_value(self, value, expression, connection): - if value is None or value == '': + if value is None or value == '' or value == "null": return None return WrappedGeometry(super().from_db_value(value, expression, connection))