diff options
| -rw-r--r-- | addons/board/static/src/js/board_view.js | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/addons/board/static/src/js/board_view.js b/addons/board/static/src/js/board_view.js index 4c4d6b92ae5..87b5034f04d 100644 --- a/addons/board/static/src/js/board_view.js +++ b/addons/board/static/src/js/board_view.js @@ -249,8 +249,14 @@ var BoardRenderer = FormRenderer.extend({ action.context = context; action.domain = domain; - var viewType = params.viewType || action.views[0][1]; - var view = _.find(action.views, function (descr) { + + // When creating a view, `action.views` is expected to be an array of dicts, while + // '/web/action/load' returns an array of arrays. + action._views = action.views; + action.views = $.map(action.views, function (view) { return {viewID: view[0], type: view[1]}}); + + var viewType = params.viewType || action._views[0][1]; + var view = _.find(action._views, function (descr) { return descr[1] === viewType; }) || [false, viewType]; return self.loadViews(action.res_model, context, [view]) @@ -281,7 +287,7 @@ var BoardRenderer = FormRenderer.extend({ }); return view.getController(self).then(function (controller) { self._boardFormViewIDs[controller.handle] = _.first( - _.find(action.views, function (descr) { + _.find(action._views, function (descr) { return descr[1] === 'form'; }) ); |
