summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/views/basic
diff options
context:
space:
mode:
Diffstat (limited to 'addons/web/static/src/js/views/basic')
-rw-r--r--addons/web/static/src/js/views/basic/basic_model.js7
-rw-r--r--addons/web/static/src/js/views/basic/basic_renderer.js2
2 files changed, 8 insertions, 1 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 42731bcf83b..64030cea866 100644
--- a/addons/web/static/src/js/views/basic/basic_model.js
+++ b/addons/web/static/src/js/views/basic/basic_model.js
@@ -360,6 +360,13 @@ var BasicModel = AbstractModel.extend({
if (this.isNew(element.id)) {
delete element.res_id;
}
+ var evalContext;
+ Object.defineProperty(element, 'evalContext', {
+ get: function () {
+ evalContext = evalContext || self._getEvalContext(record);
+ return evalContext;
+ },
+ });
}
if (element.type === 'list') {
// apply changes if any
diff --git a/addons/web/static/src/js/views/basic/basic_renderer.js b/addons/web/static/src/js/views/basic/basic_renderer.js
index 25ba02530be..3f0c67c7e70 100644
--- a/addons/web/static/src/js/views/basic/basic_renderer.js
+++ b/addons/web/static/src/js/views/basic/basic_renderer.js
@@ -282,7 +282,7 @@ var BasicRenderer = AbstractRenderer.extend({
* @param {Object} record
*/
_computeModifiers: function (modifiersData, record) {
- var evalContext = record.getEvalContext();
+ var evalContext = record.evalContext;
modifiersData.evaluatedModifiers[record.id]
= _.mapObject(modifiersData.modifiers, function (modifier) {
return new Domain(modifier, evalContext).compute(evalContext);