From 79a82698214dd36850ea2a6fd33a7d0b7a6a256e Mon Sep 17 00:00:00 2001 From: wan Date: Tue, 4 Jun 2019 12:21:58 +0000 Subject: [PATCH] [IMP] web: allow to use python expr in tree's expand Before it was only possible to set 0 or 1 as value for expand. This constrained the creation of adaptable views with regard to to context --- addons/web/static/src/js/views/list/list_view.js | 4 +++- odoo/addons/base/rng/tree_view.rng | 9 +-------- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/addons/web/static/src/js/views/list/list_view.js b/addons/web/static/src/js/views/list/list_view.js index 58cb24a452f..baba4d4a35f 100644 --- a/addons/web/static/src/js/views/list/list_view.js +++ b/addons/web/static/src/js/views/list/list_view.js @@ -14,6 +14,7 @@ var core = require('web.core'); var ListModel = require('web.ListModel'); var ListRenderer = require('web.ListRenderer'); var ListController = require('web.ListController'); +var pyUtils = require('web.py_utils'); var _lt = core._lt; @@ -41,7 +42,8 @@ var ListView = BasicView.extend({ var selectedRecords = []; // there is no selected records by default var mode = this.arch.attrs.editable && !params.readonly ? "edit" : "readonly"; - var expandGroups = !!JSON.parse(this.arch.attrs.expand || "0"); + var pyevalContext = py.dict.fromJSON(_.pick(params.context, function(value, key, object) {return !_.isUndefined(value)}) || {}); + var expandGroups = !!JSON.parse(pyUtils.py_eval(this.arch.attrs.expand || "0", {'context': pyevalContext})); this.groupbys = {}; this.arch.children.forEach(function (child) { diff --git a/odoo/addons/base/rng/tree_view.rng b/odoo/addons/base/rng/tree_view.rng index 098808dade0..6ba2bf53899 100644 --- a/odoo/addons/base/rng/tree_view.rng +++ b/odoo/addons/base/rng/tree_view.rng @@ -61,14 +61,7 @@ - - - - 1 - 0 - - - +