如何在树视图上默认隐藏或删除复选框列?

问题描述

默认情况下创建树形视图时,还会出现一个带有复选框的列

Something like thate

如何隐藏或删除此列?

感谢您的帮助。

解决方法

选择器添加到列表渲染器_renderSelector函数中,该函数在渲染headerrow时调用。
Odoo检查列表渲染器hasSelectors属性是否设置为true以添加选择器(复选框)。要禁用选择器,初始化小部件时,您需要将hasSelectors设置为false

您可以轻松地覆盖init函数,以便能够通过在操作上下文中传递值来停用选择器。

以下示例更改了表单渲染器的init函数,以检查状态上下文中是否存在hasSelectors属性并将其值设置为false

var ListRenderer = require('web.ListRenderer');
ListRenderer.include({
    init: function (parent,state,params) {
        this._super(parent,params);
        if ('hasSelectors' in state.context && !state.context.hasSelectors)
            this.hasSelectors = false;
    },});

使用以上示例,只需在上下文中将hasSelectors的值设置为False,就可以在任何树视图中禁用选择器。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...