nullable fields shouldn't use DummyValue

This commit is contained in:
Laura Klünder 2024-11-29 16:11:23 +01:00
parent 9b6f61438a
commit 6c4a16fc45

View file

@ -342,10 +342,10 @@ class ChangedObjectCollection(BaseSchema):
)) ))
if not dependencies: if not dependencies:
initial_fields[field_name] = None initial_fields[field_name] = value
continue continue
initial_fields[field_name] = DummyValue initial_fields[field_name] = None if field.null else DummyValue
obj_sub_operations.append(SingleOperationWithDependencies( obj_sub_operations.append(SingleOperationWithDependencies(
uid=(changed_obj.obj, f"field_{field_name}"), uid=(changed_obj.obj, f"field_{field_name}"),
operation=UpdateObjectOperation(obj=changed_obj.obj, fields={field_name: value}), operation=UpdateObjectOperation(obj=changed_obj.obj, fields={field_name: value}),
@ -566,10 +566,6 @@ class ChangedObjectCollection(BaseSchema):
if value is DummyValue: if value is DummyValue:
# if there's a dummy value to fill, we need to find a dummy value # if there's a dummy value to fill, we need to find a dummy value
field = model_cls._meta.get_field(field_name) field = model_cls._meta.get_field(field_name)
if field.null:
# if it's nullable, we can just null it, todo: will it even be a dummy value then?
new_operation.fields[field_name] = None
continue
if field.is_relation: if field.is_relation:
# for a relation, we will try to find a valid other object to reference # for a relation, we will try to find a valid other object to reference