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属性来定义。
六:工作流权限#
工作流中的活动可以设置操作权限,规定只有哪些群组的用户才可以操作。
#
作者:上官飞鸿
出处:https://www.cnblogs.com/jackadam/p/16513819.html
版权:本作品采用「知识共享-署名-非商业性-禁止演绎(CC-BY-NC-ND)」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
2020-07-24 debian 安装 ifconfig ping
2020-07-24 adb shell pm list packages 高级用法