Do not override deleted record instances by related records

(grafted from 5b67535bb4cdf07df76c15e6fb4b425f44f4ad23)

--HG--
branch : 6.0
This commit is contained in:
Cédric Krier committed 2023-04-22 18:31:30 +02:00
1 parent b38bb01a6f
commit d1c67443ff
1 file changed
+8 -6
+8 -6
View File
@@ -1150,9 +1150,10 @@ class ModelSQL(ModelStorage):
if (not hasattr(Model, 'search')
or not hasattr(Model, 'write')):
continue
records = get_related_records(Model, field_name, sub_ids)
if records:
Model.write(records, {
related_records = get_related_records(
Model, field_name, sub_ids)
if related_records:
Model.write(related_records, {
field_name: None,
})
@@ -1160,9 +1161,10 @@ class ModelSQL(ModelStorage):
if (not hasattr(Model, 'search')
or not hasattr(Model, 'delete')):
continue
records = get_related_records(Model, field_name, sub_ids)
if records:
Model.delete(records)
related_records = get_related_records(
Model, field_name, sub_ids)
if related_records:
Model.delete(related_records)
for Model, field_name in foreign_keys_tocheck:
with Transaction().set_context(