[FIX] fix editing one2many in some cases (web)
See issue #3964 for more detail. Main problem was caused by commit
f0e331e005
. It set the key name+'__display' to false when reloading
a record for all field types, but it was only concerned with many2many.
This commit is contained in:
parent
cdce2e2283
commit
29f895f947
|
@ -528,6 +528,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||||
},
|
},
|
||||||
reload_record: function (record) {
|
reload_record: function (record) {
|
||||||
var self = this;
|
var self = this;
|
||||||
|
var fields = this.fields_view.fields;
|
||||||
// Use of search_read instead of read to check if we can still read the record (security rules)
|
// Use of search_read instead of read to check if we can still read the record (security rules)
|
||||||
return this.dataset.read_ids(
|
return this.dataset.read_ids(
|
||||||
[record.get('id')],
|
[record.get('id')],
|
||||||
|
@ -542,7 +543,8 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
_.each(values, function (value, key) {
|
_.each(values, function (value, key) {
|
||||||
record.set(key + '__display', false, {silent: true});
|
if (fields[key] && fields[key].type === 'many2many')
|
||||||
|
record.set(key + '__display', false, {silent: true});
|
||||||
record.set(key, value, {silent: true});
|
record.set(key, value, {silent: true});
|
||||||
});
|
});
|
||||||
record.trigger('change', record);
|
record.trigger('change', record);
|
||||||
|
|
Loading…
Reference in New Issue