Openerp 一个模型的两条规则
我需要使用两个Openerp 一个模型的两条规则,openerp,odoo-10,Openerp,Odoo 10,我需要使用两个组对res\u partner表应用两个规则 组:员工和经理 菜单项:客户和“员工” 型号:res\u partner用于两种视图 组Staff中的用户只能查看Staff菜单详细信息(只读访问) 但他们需要完全访问客户(读、写、创建和取消链接) Manager中的用户应具有对这两个视图的完全访问权限 我试过下面的代码 <record model="ir.rule" id="staff_staff_rule"> <field name="name">
组对res\u partner
表应用两个规则
组:员工
和经理
菜单项:客户
和“员工”
型号:res\u partner
用于两种视图
组Staff
中的用户只能查看Staff
菜单详细信息(只读访问)
但他们需要完全访问客户
(读、写、创建和取消链接)
Manager中的用户应具有对这两个视图的完全访问权限
我试过下面的代码
<record model="ir.rule" id="staff_staff_rule">
<field name="name">Readonly for staff</field>
<field name="model_id" ref="base.model_res_partner"/>
<field name="domain_force">[(1,'=',1)]</field>
<field name="perm_create" eval="False"/>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="False"/>
<field name="perm_unlink" eval="False"/>
<field name="groups" eval="[(4, ref('appartment.group_appartment_staff'))]"/>
</record>
仅供员工阅读
[(1,'=',1)]
但用户仍然可以从员工组中创建、编辑、读取和删除记录
我如何才能做到这一点。您应该给出只显示员工的正确域。当你把
您指示此组被禁止只读此记录的域
仅供员工阅读
[('partner_type','=','staff')]
我认为使用csv(安全访问文件)可以轻松完成。
您可以直接从csv文件以及需要添加到openerp.py/清单.py文件中的该文件管理此类情况
CSV文件示例
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_res_partner,res_partner_user_access,model_res_partner,appartment.group_appartment_staff,1,0,0,0
access_manager_res_partner,res_partner_manager_access,model_res_partner,appartment.group_appartment_manager,1,1,1,1
规则
规则用于在每个记录上应用条件
我一直在尝试访问
访问控制列表
ir.model.access/访问控制列表用于管理权限
(仅限模型访问用户是否可以读/写/创建/删除或
不)
@切里夫·奥多已经解释了规则,这是访问控制列表。通过这两种方式,odoo可以管理证券。谢谢Emipro。但me要求是,集团员工
应有权创建、编辑、删除和读取客户视图,但员工视图
只能读取。这两个视图使用相同的代码<代码> RES.Outs<代码>。它将解释刚才所解释的相同的事情。Emipro,忘记组<代码>管理器< /> >,只考虑组<代码>工作人员< /代码>。根据您的回答,access list
应该是access\u res\u partner,res\u partner,user\u access,model\u resu partner,appartment.集团公寓员工,1,0,0,0
和access\u resu partner,resu partner\u user\u access,model\u resu partner,appartment.集团公寓员工,1,1,1
。可能吗?我想,这没什么意义。在规则中,您也会遇到问题,因为您希望在同一组中实现同一模型的不同行为。但是,您必须具有唯一的条件(组或任何其他字段)。