odoo中关于权限,有几个部分:
- 记录规则
记录规则,模型:ir.rule
- 菜单级别
菜单访问权限,通过分配用户组来实现,但是只是隐藏菜单可视的入口,如果知道菜单的xml_id,仍然可以通过进入指定的URL来访问。
如何实现,暂时还未研究,待研究
- 模型访问权限
模型的访问权先,主要是通过CSV文件来实现的,分别表示对某个模型的增删改查的权限。
CSV文件最后存储在ir_model_data数据表中,
具体部分,如:
access_res_users,res.users,model_res_users,base.group_user,1,1,1,1
第一个是参数是xml_id,用于存储在数据库的ir_model_data中,作为标识,也可以直接设置-技术-外部标识中(debug模式下)搜索到,
第二个参数res.users 表示描述性标题,它只是内容展示,在模块中最好也保持其唯一性。官方模块通常使用模型名称和组的圆点分隔的字符串。
model_res_users 表示的是model_id,是由模型自动生成的xmlid,一般是model+模型名
base.group_user表示的是用户组或群组。
最后的数字表示的是:1,表示拥有这部分权限,0表示没有这部分权限,表示的顺序是:读写创删权限。
- 字段权限
odoo中,利用字段的权限,可以控制不同群组访问不同的字段。
参考文献:
《odoo中文教程》
《OpenERP应用和开发基础》
《Odoo 10 Development Essentials》