Odoo 如何隐藏基于用户组的编辑按钮?

Odoo How to hide edit button based on User Group?

我想隐藏基于用户组的编辑按钮。但是我不想编辑ir.model.access.csv,因为我的系统流程中的某些过程必须能够让某些用户组通过代码编写模型。

有没有办法对某些用户组隐藏编辑按钮?

我自己找到了答案。我只是添加属性以继承视图,如下代码所示:

    <record model="ir.ui.view">
        <field name="name">edit_button</field>
        <field name="model">account.move</field>
        <field name="inherit_id" ref="account.view_move_form"/>
        <field name="groups_id" eval="[(4,ref('wongnai_flow.group_edit')),(4, ref('wongnai_flow.group_cs')),(4, ref('wongnai_flow.group_ae')),(4, ref('wongnai_flow.group_csm'))]"/>
        <field name="arch" type="xml">
            <xpath expr="/form" position="attributes">
                <attribute name="create">false</attribute>
                <attribute name="edit">false</attribute>
            </xpath>
        </field>
    </record>

谢谢你的回答,对我很有帮助。

但是当我删除某些组(例如:购买:用户)的 edit/create 按钮时,指定的更高组(例如:购买:经理)的 edit/create 按钮也被删除组(例如:购买:用户)。

我的情况: 我删除了 Purhcase: User 组的编辑按钮,我看到 Purchase: Manager 组的编辑按钮也被删除了。

我试过的解决方法: 我为 Purchase: Manager 组创建了另外一个视图,并给出了 edit TRUE。所以我为两个组创建了两个视图

正在寻找更好的解决方案来使用单一视图实现此场景,因为为多个组创建多个视图并不好。