You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Odoo看板视图中移除"Archive Record"与"Restore Records"选项?

移除Odoo看板视图设置中的归档/恢复选项

下面提供两种可行的实现方式,按需选择:

方法1:针对单个模型修改XML视图

Odoo看板的设置菜单是通过视图XML里的<settings>节点定义的,你可以继承目标模型的看板视图,重新定义这个节点,只保留「Fold」选项。

举个例子,假设要修改联系人(res.partner)模型的看板视图,新建如下XML代码:

<odoo>
    <record id="view_partner_kanban_inherit" model="ir.ui.view">
        <field name="name">res.partner.kanban.inherit</field>
        <field name="model">res.partner</field>
        <field name="inherit_id" ref="base.view_partner_kanban"/>
        <field name="arch" type="xml">
            <!-- 替换原有的settings节点 -->
            <xpath expr="//kanban/settings" position="replace">
                <settings>
                    <item name="fold" string="Fold"/>
                    <!-- 删掉Archive和Restore对应的item,只留折叠选项 -->
                </settings>
            </xpath>
        </field>
    </record>
</odoo>

把这段代码放到你自定义模块的XML文件里,升级模块后,该模型的看板设置菜单就只会显示「Fold」了。

方法2:全局修改所有看板视图(JS扩展)

如果想让所有模型的看板都隐藏这两个选项,可以用JS扩展来实现:

  1. 在自定义模块里创建JS文件 static/src/js/kanban_custom.js,内容如下:
odoo.define('your_module.kanban_custom', function (require) {
    "use strict";

    const KanbanController = require('web.KanbanController');
    const KanbanView = require('web.KanbanView');
    const viewRegistry = require('web.view_registry');

    const CustomKanbanController = KanbanController.extend({
        // 重写获取设置菜单的方法,过滤掉归档和恢复选项
        _getSettingsMenuItems: function () {
            let items = this._super(...arguments);
            // 过滤掉name为archive(归档)和unarchive(恢复)的选项
            return items.filter(item => !['archive', 'unarchive'].includes(item.name));
        },
    });

    const CustomKanbanView = KanbanView.extend({
        config: _.extend({}, KanbanView.prototype.config, {
            Controller: CustomKanbanController,
        }),
    });

    viewRegistry.add('kanban', CustomKanbanView);

    return {
        CustomKanbanController: CustomKanbanController,
        CustomKanbanView: CustomKanbanView,
    };
});
  1. 在模块的__manifest__.py里引入这个JS文件:
{
    # 其他模块配置...
    'assets': {
        'web.assets_backend': [
            'your_module/static/src/js/kanban_custom.js',
        ],
    },
}

升级模块并刷新页面后,所有看板视图的设置菜单里就看不到归档和恢复选项了。

小提示

  • 方法1适合精准控制单个模型,方法2适合全局统一修改;
  • 操作后记得升级模块、清空浏览器缓存再测试;
  • 企业版Odoo的视图结构和社区版基本一致,上述方法同样适用。

内容的提问来源于stack exchange,提问作者Mahfujul Hasan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 07:25:27