Do not override deleted record instances by related records
(grafted from 5b67535bb4cdf07df76c15e6fb4b425f44f4ad23) --HG-- branch : 6.0
This commit is contained in:
1 parent
b38bb01a6f
commit
d1c67443ff
1 file changed
+8
-6
@@ -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(
|
||||
|
||||
Reference in new issue
Block a user