diff options
| author | Christophe Simonis <chs@odoo.com> | 2018-11-06 16:40:07 +0100 |
|---|---|---|
| committer | Christophe Simonis <chs@odoo.com> | 2018-11-06 16:40:07 +0100 |
| commit | b106b7ce0bfac5d4f955dc98be9a35d79e0947ff (patch) | |
| tree | 48bb187b80b2b10f7a1d76bf5116bf3ea16669a2 /addons/web/static/src/js/views/basic | |
| parent | 478691b95de9eb0d03c145e547a773de40ca9a4d (diff) | |
| parent | dd70c684268b538f02ea4fa0425f9b70136b3300 (diff) | |
[MERGE] forward port branch 12.0 up to dd70c684268
Diffstat (limited to 'addons/web/static/src/js/views/basic')
| -rw-r--r-- | addons/web/static/src/js/views/basic/basic_model.js | 5 | ||||
| -rw-r--r-- | addons/web/static/src/js/views/basic/basic_view.js | 8 |
2 files changed, 11 insertions, 2 deletions
diff --git a/addons/web/static/src/js/views/basic/basic_model.js b/addons/web/static/src/js/views/basic/basic_model.js index a16a1df35a4..0701c1d1046 100644 --- a/addons/web/static/src/js/views/basic/basic_model.js +++ b/addons/web/static/src/js/views/basic/basic_model.js @@ -3931,11 +3931,12 @@ var BasicModel = AbstractModel.extend({ */ _postprocess: function (record, options) { var self = this; + var viewType = options && options.viewType || record.viewType; var defs = []; _.each(record.getFieldNames(options), function (name) { var field = record.fields[name]; - var fieldInfo = record.fieldsInfo[record.viewType][name] || {}; + var fieldInfo = record.fieldsInfo[viewType][name] || {}; var options = fieldInfo.options || {}; if (options.always_reload) { if (record.fields[name].type === 'many2one' && record.data[name]) { @@ -3944,7 +3945,7 @@ var BasicModel = AbstractModel.extend({ model: field.relation, method: 'name_get', args: [element.data.id], - context: self._getContext(record, {fieldName: name}), + context: self._getContext(record, {fieldName: name, viewType: viewType}), }) .then(function (result) { element.data.display_name = result[0][1]; diff --git a/addons/web/static/src/js/views/basic/basic_view.js b/addons/web/static/src/js/views/basic/basic_view.js index 9e1cde2aada..eb3efe7001d 100644 --- a/addons/web/static/src/js/views/basic/basic_view.js +++ b/addons/web/static/src/js/views/basic/basic_view.js @@ -150,6 +150,14 @@ var BasicView = AbstractView.extend({ } } } + // Many2one: context is not the same between the different views + // this means the result of a name_get could differ + if (fieldType === 'many2one') { + if (JSON.stringify(record.data[name].context) !== + JSON.stringify(fieldInfo.context)) { + fieldNames.push(name); + } + } } }); |
