Convert negative id value as None when set by the client
Domain inversion may force a unique value based on the default value from PYSON evaluation. In such case it means that no record can be set. Closes #12799 (grafted from 48463dae759ea1473b258ed905ba2c15fe96e10c) --HG-- branch : 6.0
This commit is contained in:
@@ -2073,6 +2073,10 @@
|
||||
rec_name = '';
|
||||
}
|
||||
}
|
||||
if ((value < 0) && (this.name != record.group.parent_name)) {
|
||||
value = null;
|
||||
rec_name = '';
|
||||
}
|
||||
Sao.setdefault(
|
||||
record._values, this.name + '.', {}).rec_name = rec_name;
|
||||
Sao.field.Many2One._super.set_client.call(this, record, value,
|
||||
|
||||
@@ -490,6 +490,8 @@ class M2OField(Field):
|
||||
self.name + '.', {}).get('rec_name', '')
|
||||
else:
|
||||
rec_name = ''
|
||||
if value and value < 0 and self.name != record.parent_name:
|
||||
value, rec_name = None, ''
|
||||
record.value.setdefault(self.name + '.', {})['rec_name'] = rec_name
|
||||
super(M2OField, self).set_client(record, value,
|
||||
force_change=force_change)
|
||||
|
||||
Reference in New Issue
Block a user