odoo 权限设置
作者:互联网
简介
权限也是一个绕不开的东西,除非你做只有一个人用的系统,数据出问题,全赖他。
一:权限组
一般定义在/security/****.xml
会在用户设置中表现为下拉框或者多选框来为用户分配权限组。
<?xml version="1.0" encoding="utf-8"?> <odoo> <data noupdate="0"> <record id="权限组id" model="ir.module.category"> <field name="name">XXX权限组</field> <field name="description">XXX模块权限设置</field> </record> </data> </odoo>
二:表权限
一般定义在security/****.csv
id ,name ,model_id:id ,group_id:id ,perm_read,perm_write,perm_create,perm_unlink UID,AccessName,model_ProjectName_ModelName,ProjectName.group_ProjectName_employee,1 ,1 ,1 ,1
id,随便写
name,随便写
model_id,固定格式 model_表名,todo.task对应该标识符是model_todo_task
group_id,权限组id,
read 读权限
write 写权限
create 创建权限
unlink 删除权限
1是允许,0是禁止
三:记录权限
一般定义在/security/****.xml,我都和权限组写一起了
<?xml version="1.0" encoding="utf-8"?> <odoo> <record id="模块名_对象_rule" model="ir.rule"> //为某对象添加记录规则 <field name="name">规则名</field> <field name="model_id" ref="model_模块名"/> <field name="domain_force">[('字段名','操作符',值)]</field> //记录过滤表达式:符合该表达式的记录才能被访问 <field name="groups" eval="[(值,ref('权限组id'))]"/> //权限组id在权限组创建时指定,用于指定本规则作用于哪些组 <field name="perm_read" eval="0/1"/> <field name="perm_write" eval="0/1"/> <field name="perm_create" eval="0/1"/> <field name="perm_unlink" eval="0/1" /> </record> </odoo>
四:字段权限
Odoo可以设置具体字段的访问权限,包括可见性、写、改权限等。
有两种方式:
一种是在模型定义的代码中,通过某字段的read=[群组]、write=[群组]属性,指定字段对于哪些群组可读写。
另一种是在模型的视图xml文件中,对字段通过 groups属性指定访问权限。
五:菜单报表权限
Odoo可以设置菜单项、某些报表的可见性,通过在xml文件中,对应的menu标签、report标签的groups属性来定义。
六:工作流权限
工作流中的活动可以设置操作权限,规定只有哪些群组的用户才可以操作。
标签:xml,群组,perm,设置,odoo,model,权限,id 来源: https://www.cnblogs.com/jackadam/p/16513819.html