summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/views
diff options
context:
space:
mode:
authorChristophe Matthieu <chm@odoo.com>2017-03-15 12:06:29 +0100
committerAaron Bohy <aab@odoo.com>2017-04-11 19:44:38 +0200
commitce36786038b7b9bfa3e292ce40207d1ea46f3c92 (patch)
treed670d2c8c94e7269fc50beeba0f7bb2740d8e167 /addons/web/static/src/js/views
parent5e91027a86217e440608ed80f1da5d6f82881e61 (diff)
[FIX] web: _buildOnchangeSpecs must return only the present fields
Before: the method '_buildOnchangeSpecs' returned all fields, but some models like 'res.users' have redefined the fields_get and add some fake fields which cause a crash.
Diffstat (limited to 'addons/web/static/src/js/views')
-rw-r--r--addons/web/static/src/js/views/basic/basic_model.js4
-rw-r--r--addons/web/static/src/js/views/form/form_view.js1
2 files changed, 3 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 8ae01e87bbc..7d33d51257f 100644
--- a/addons/web/static/src/js/views/basic/basic_model.js
+++ b/addons/web/static/src/js/views/basic/basic_model.js
@@ -1239,8 +1239,8 @@ var BasicModel = AbstractModel.extend({
var field = record.fields[name];
specs[name] = (field.onChange) || "";
_.each(field.views, function (view) {
- _.each(view.fields, function (field, subname) {
- specs[name + '.' + subname] = (field.onChange) || "";
+ _.each(view.fieldAttrs, function (field, subname) {
+ specs[name + '.' + subname] = (view.fields[subname].onChange) || "";
});
});
});
diff --git a/addons/web/static/src/js/views/form/form_view.js b/addons/web/static/src/js/views/form/form_view.js
index 3f397f64d9a..6578c7ada15 100644
--- a/addons/web/static/src/js/views/form/form_view.js
+++ b/addons/web/static/src/js/views/form/form_view.js
@@ -89,6 +89,7 @@ var FormView = BasicView.extend({
field.views[viewName === 'list' ? 'tree' : viewName] = view;
field.relatedFields = fieldView.view_fields;
field.fieldAttrs = fieldView.fieldAttrs;
+ view.fieldAttrs = fieldView.fieldAttrs;
}
}));
}