odoo开发笔记 -- 用户配置界面增长模块访问权限

在odoo设置界面,点击用户,进入用户配置界面,会看到:app

访问权 | 我的资料菜单spa

在访问权 page菜单界面,能够看到系统预制的一些模块都会显示在这里,code

那么,咱们本身开发的模块如何显示在这块呢,从而方便在建立用户的时候,给该用户访问咱们本身开发模块的权限!xml

实现方式:blog

在odoo后台代码中增长两个文件,并在__manifest__.py中申明引用这两个文件。ip

具体编写:utf-8

新建两个文件夹:开发

(1) 在本身模块根目录下,建立data 和 security 两个目录,通常这两个目录也是平时odoo模块开发时的标准目录结构。it

(2) 在security目录下,建立名为:xxx_security.xml的文件,xxx为你的模块名,切记不要含中文。io

文件内容编写格式:[ 注意:把全部的xxx换成本身的模块名!ref="module_category_xxx" 这句中引用的id就是在下个文件夹data中要写的id

<?xml version="1.0" encoding="utf-8"?>
<odoo>
  <record id="group_xxx_user" model="res.groups">
    <field name="name">xxx user</field>
    <field name="category_id" ref="module_category_xxx"/>
    <field name="users" eval="[(4, ref('base.user_root'))]"/>
  </record>
</odoo>

(3)在第二个目录data下,建立名为:ir_module_category.xml的文件,文件内容:id="module_category_xxx" 和上边提到的ref引用id对应。

<?xml version="1.0" encoding="utf-8"?>
<odoo>
  <record model="ir.module.category" id="module_category_xxx">
    <field name="name">这块写你的模块名,能够写中文,用于界面显示</field>
    <field name="description">Manage xxx applications</field>
    <field name="sequence">35</field>
  </record>
</odoo>

另外须要说明一下,上方文件中的<field name="sequence">35</field> sequence对应的数值,来控制菜单界面的显示顺序,能够根据本身本地的实际环境进行设置相应的值,不要跟odoo设置菜单默认的sequence值同样就行。

(4) 在__manifest__.py中申明引用这两个文件。

(5) 重启服务,升级你的模块,ok 验证一下,在设置 - 用户 - 访问权 下,是否是出现了你本身开发的模块。

ps: odoo权限相关的配置文件,修改以后,须要重启服务,并升级相应的模块才能生效。

相关文章
相关标签/搜索