Odoo v17社区版如何隐藏Actions菜单以禁止公司记录导入导出
Odoo v17社区版隐藏公司记录Actions菜单及禁用导入导出的实现方式
方法一:针对用户组禁用全局导入导出权限
如果不需要全局开放导入导出功能,直接通过权限组限制:
- 进入「设置 > 用户与公司 > 权限组」,找到目标用户所属的权限组(比如普通员工组
base.group_user) - 编辑该组,切换到「应用」标签页,取消勾选导入文档和导出数据这两个权限项
- 保存后,该组下的用户打开任何模型的列表视图,Actions菜单里的导入导出选项都会消失,也无法执行对应操作
方法二:仅隐藏公司列表的Actions菜单
如果只需要针对公司(res.company)模型隐藏Actions菜单,通过自定义模块继承视图实现:
- 创建自定义模块,在模块的
views目录下新建res_company_views.xml文件,写入以下代码:
<odoo> <record id="res_company_tree_hide_actions" model="ir.ui.view"> <field name="name">res.company.tree.hide.actions</field> <field name="model">res.company</field> <field name="inherit_id" ref="base.view_res_company_tree"/> <field name="arch" type="xml"> <!-- 隐藏列表头部的Actions按钮容器 --> <xpath expr="//header/div[@class='o_list_buttons']" position="attributes"> <attribute name="style">display: none !important;</attribute> </xpath> </field> </record> </odoo>
- 安装该自定义模块后,公司列表视图的Actions菜单会被彻底隐藏
方法三:针对公司模型单独禁用导入导出
如果需要保留Actions菜单但仅禁用导入导出操作,通过模型权限配置实现:
在自定义模块的security目录下新建ir.model.access.csv文件,添加如下配置:
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink,perm_import,perm_export access_res_company_restrict_import_export,Access res.company restrict import export,model_res_company,base.group_user,1,1,0,0,0,0
- 把
perm_import和perm_export设为0,指定组(这里是普通用户组base.group_user)的用户就无法对公司记录执行导入导出 - 如果需要针对特定组配置,替换
base.group_user为目标组的XML ID
内容的提问来源于stack exchange,提问作者Muhammad Awais
相关产品推荐
相关产品推荐

