python - odoo 13 定制多家公司的产品和供应商
问题描述
我的 odoo 服务器上有多家公司。我已经定制了一个模块来控制产品在订单行上显示。我需要这个在一家公司工作,而不是全部。我怎样才能做到这一点?
解决方案
该方法取决于您要执行的操作。
显示或隐藏某些东西
您可以简单地创建一个组 (In res.groups
)。在 中res.config.settings
,您添加的新选项会将当前用户公司的所有用户添加到此组中。(我不确定是否implied_group
在公司工作,需要测试)。
在每个字段/按钮/菜单必须可见之后,添加groups="module.xml_id"
具体流程
你可以做一些与以前类似的事情。创建一个组,在配置中添加选项。
在你的 python 代码中你可以做这样的事情。
def my_method(self):
# Code for all cases
if self.env.user.has_group('module.xml_id'):
# Code for this specific group of user
return True
为特定公司安装模块
是不可能的。当 Odoo 安装一个新模块时,代码将在所有情况下执行。这两家公司需要两个实例。
推荐阅读
- linux - 如何将“which”与正则表达式一起使用,或以其他方式在 $PATH 中查找命令
- dictionary - Angular 6:请求的资源上不存在“Access-Control-Allow-Origin”标头
- css - 按钮 CSS 样式在移动设备上不起作用
- c# - 我们需要在 Fluent Api 中定义所有模型吗?
- arrays - 将迭代分布在具有最小值和最大值的特定数组中的列中
- angular - 获取错误 Http 服务:NgFor 仅支持绑定到 Iterables,例如 Arrays。”
- ios - 在不同的测试目标之间有效地共享测试替身
- node.js - 尝试获取特定的单个记录时,GraphiQL 返回空值
- javascript - 对话框输入和完整日历的问题
- selenium - 无法使用任何浏览器的 selenium web-driver 处理登录弹出窗口