From 90de2396df39e21fa8447cb9a2b063c79b94923d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laura=20Kl=C3=BCnder?= Date: Thu, 5 Dec 2024 14:07:06 +0100 Subject: [PATCH] fix stuff about object deletion in changeset --- src/c3nav/editor/changes.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/c3nav/editor/changes.py b/src/c3nav/editor/changes.py index 316dc303..e1564d60 100644 --- a/src/c3nav/editor/changes.py +++ b/src/c3nav/editor/changes.py @@ -250,7 +250,7 @@ class ChangedObjectCollection(BaseSchema): else: changed_object.fields[field_name] = value elif isinstance(operation, DeleteObjectOperation): - changed_object.deleted = False + changed_object.deleted = True else: changed_m2m = changed_object.m2m_changes.get(operation.field, None) if changed_m2m is None: @@ -470,7 +470,7 @@ class ChangedObjectCollection(BaseSchema): # don't check this for objects that don't exist anymore ids -= start_situation.missing_objects.get(model, set()) for field in apps.get_model('mapdata', model)._meta.get_fields(): - if isinstance(field, (ManyToOneRel, OneToOneRel)) or field.model._meta.app_label != "mapdata": + if not isinstance(field, (ManyToOneRel, OneToOneRel)) or field.model._meta.app_label != "mapdata": continue potential_fields.setdefault(field.related_model._meta.model_name, {}).setdefault(field.field.attname, {})[model] = ids