odoo开发笔记 -- 用户配置界面如何增加模块访问权限
在odoo设置界面,点击用户,进入用户配置界面,会看到:
访问权 | 个人资料菜单
在访问权 page菜单界面,可以看到系统预制的一些模块都会显示在这里,
那么,我们自己开发的模块如何显示在这块呢,从而方便在创建用户的时候,给该用户访问我们自己开发模块的权限!
实现方式:
在odoo后台代码中增加两个文件,并在__manifest__.py中申明引用这两个文件。
具体编写:
新建两个文件夹:
(1) 在自己模块根目录下,创建data 和 security 两个目录,一般这两个目录也是平时odoo模块开发时的标准目录结构。
(2) 在security目录下,创建名为:xxx_security.xml的文件,xxx为你的模块名,切记不要含中文。
文件内容编写格式:[ 注意:把所有的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权限相关的配置文件,修改之后,需要重启服务,并升级相应的模块才能生效。
odoo开发笔记 -- 用户配置界面如何增加模块访问权限的更多相关文章
- odoo开发笔记 -- odoo10 视图界面根据字段状态,动态隐藏创建&编辑按钮
场景描述: 解决方式: 网络搜索,vnsoft_form_hide_edit 找到了这个odoo8的模块, odoo10语法和视图界面有新的变化,所以需要修改一些地方,感兴趣的小伙伴可以对比下两个代码 ...
- odoo开发笔记 -- 用户字段值,默认给当前登录用户
场景描述: 在一些视图下,当系统用户创建某条记录的时候,需要给某个用户字段设置默认值,即:默认值为系统的当前登录用户,如何实现? 处理方式: 在定义模型的时候,给该字段赋值就可以: operator_ ...
- odoo开发笔记 -- div标签代替odoo button写法
odoo开发笔记 -- div标签代替odoo button写法 并调用自定义js <footer> <div id="confirm_request_cloud_repo ...
- odoo开发笔记 -- 搜索视图继承扩展
odoo开发笔记 -- 搜索视图继承扩展
- odoo开发笔记 -- 后台日志输出及分析
odoo开发笔记 -- 后台日志输出及分析 附:日志分析软件
- Android studio 开发一个用户登录界面
Android studio 开发一个用户登录界面 activity_main.xml <?xml version="1.0" encoding="utf-8&qu ...
- Excel催化剂开源第10波-VSTO开发之用户配置数据与工作薄文件一同存储
在传统的VBA开发中,若是用的是普通加载项方法,是可以存储数据在xlam上的,若用的是Com加载项方法同时是Addins程序级别的项目开发的,配置文件没法保存到工作薄中,一般另外用配置文件来存放供调用 ...
- odoo开发笔记 -- 权限机制
转两篇关于权限的2篇文章,加深这方面的认识.注:后面附有原作者地址,希望不构成侵权. https://www.cnblogs.com/crazyguo/p/6999408.html 第一篇:http: ...
- ThinkPHP开发笔记-用户登录注册
1.修改模块配置,Application/当前模块名/Conf/config.php <?php return array( //数据库配置信息 'DB_TYPE' => 'mysql', ...
随机推荐
- java编程IO简单回顾和学习
java编程IO操作必不可少的,很久不玩IO,回顾一下,写了几个小程序,记录一下,方便查阅和学习. 1.给出一个整数数组,将其写入一个文件,再从文件中读出,并按整数大小逆序打印. package co ...
- 【应用】for:批量修改文件名
## @echo off setlocal EnableDelayedExpansion rem set string=suffix for %%i in (*.txt) do ( set name= ...
- share pool 管理机制
Library cache是Shared pool的一部分,它几乎是Oracle内存结构中最复杂的一部分,主要存放shared curosr(SQL)和PLSQL对象(function,procedu ...
- Mac使用终端安装Homebrew(brew)
Homebrew简称brew,OSX上的软件包管理工具,在Mac终端可以通过brew安装.更新.卸载软件. 1.打开终端直接输入下面指令回车: // ruby -e "$(curl -fsS ...
- Docker windows下安装并搭建Nodejs的webapp
一.关于Docker 什么是Docker?Docker 采用go语言编写,是一个开源的应用容器引擎.让开发者可以快速打包他们的应用以及依赖包到一个封装的可移植的容器Image中,然后发布到任何流行的机 ...
- js-数组面试题
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> & ...
- SRM484
又Orz了一发rng_58.. 250pt: 题意:给定一种兔子数:当S(x*x) = S(x)*S(x)时,x为兔子数,其中S(x)表示各个数位之和. 思路:本来想了一个复杂度很高的想法..然后想看 ...
- android 三种定时器的写法
//两秒后执行new Handler().postDelayed(new Runnable() { @Override public void run() { --todo }}, 2000); -- ...
- iOS笔记之UIKit_UISlider/UIStepper/UISwitch
- (void)viewDidLoad { [super viewDidLoad]; self.sp = [[UIStepper alloc]init]; //设置计步器的位置 self.sp.cen ...
- Delphi获取公网IP地址函数
uses IdHTTP; function GetPublicIP: string; var strIP, URL: string; iStart, iEnd: Integer; MyIdHTTP: ...