限制在odoo中编辑网页

Restrict editing access of webpages in odoo

用一些附加功能扩展 odoo 网站模块会很棒。显然需要创建一个新模块。 并非每个网站用户都应被允许编辑网站的每个页面。

示例:X公司使用odoo中的网站模块。管理员 A 使用网站构建器准备网站的主页。现在用户 B 打开网站构建器。他不应该能够编辑选定的页面,如主页、联系我们页面......但可以访问某些功能,例如添加和编辑关于某些主题的新页面。

这可能吗?最好的方法是什么?

https://www.odoo.com/documentation/12.0/reference/security.html 所述,为了能够修改记录(在本例中为 website.page 模型),检查了用户访问权限(在 ir.model.access 上)。

所以,我建议 creating/editing 一个组,添加一些用户,然后转到 "Record Rules" 选项卡并添加如下一行:

  • 名称:禁用主页编辑
  • 对象:页面(website.page
  • 域:[('id','not in',[1])]
  • 申请阅读:[x]
  • 申请写入:[x]
  • 申请创建:[ ]
  • 申请删除:[ ]

该规则应允许组成员编辑 (write) 网站页面,只要其 id 不是 1(即主页)。

注意:您不能在域表达式上使用 ref,上下文中只有两个对象可用:user(当前用户)和 time(Python模块)。