diff options
| author | Aaron Bohy <aab@odoo.com> | 2016-03-16 13:55:42 +0100 |
|---|---|---|
| committer | Aaron Bohy <aab@odoo.com> | 2016-03-18 10:44:52 +0100 |
| commit | 6c57935443d2abd4e3c7507cf4f3093719fb1c2f (patch) | |
| tree | 88971120ba2505ac90cc8428d57312742e2313bd /addons/web/static/src/js/views/form_common.js | |
| parent | bda451ab31c19c52eb72c16eae2471d39860a8d3 (diff) | |
[IMP] openerp,web: cache of actions, fields(_views) and filters
Introduction of 'data_manager' service which handles meta-data related to
actions and views (fields_views, fields and filters). Ideally, all RPCs to
get that kind of information should go through data_manager, as it holds an
internal cache.
Diffstat (limited to 'addons/web/static/src/js/views/form_common.js')
| -rw-r--r-- | addons/web/static/src/js/views/form_common.js | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/addons/web/static/src/js/views/form_common.js b/addons/web/static/src/js/views/form_common.js index 1b29a2819b9..a92cc3cddc4 100644 --- a/addons/web/static/src/js/views/form_common.js +++ b/addons/web/static/src/js/views/form_common.js @@ -3,6 +3,7 @@ odoo.define('web.form_common', function (require) { var core = require('web.core'); var data = require('web.data'); +var data_manager = require('web.data_manager'); var Dialog = require('web.Dialog'); var ListView = require('web.ListView'); var pyeval = require('web.pyeval'); @@ -919,12 +920,7 @@ var FormViewDialog = ViewDialog.extend({ if (this.options.alternative_form_view) { fields_view_def = $.when(this.options.alternative_form_view); } else { - fields_view_def = this.dataset._model.fields_view_get({ - view_id: this.options.view_id || false, - view_type: 'form', - context: this.dataset.get_context(), - toolbar: false, - }); + fields_view_def = data_manager.load_fields_view(this.dataset, this.options.view_id, 'form', false); } fields_view_def.then(function (fields_view) { self.view_form = new FormView(self, self.dataset, fields_view, options); @@ -977,7 +973,6 @@ var SelectCreateDialog = ViewDialog.extend({ return this.create_edit_record(); } - var self = this; var _super = this._super.bind(this); this.init_dataset(); var context = pyeval.sync_eval_domains_and_contexts({ @@ -991,15 +986,12 @@ var SelectCreateDialog = ViewDialog.extend({ search_defaults[match[1]] = value_; } }); - this.dataset._model.call('load_views', { - views: [[false, 'list'], [false, 'search']], - context: this.dataset.get_context(), - }).then(function (result) { - var fields_views = _.mapObject(result.fields_views, self.dataset._model.postprocess_fvg); - self.setup(search_defaults, fields_views).then(function (fragment) { + data_manager + .load_views(this.dataset, [[false, 'list'], [false, 'search']], {}) + .then(this.setup.bind(this, search_defaults)) + .then(function (fragment) { _super().$el.append(fragment); }); - }); return this; }, |
