【问题标题】:Record rules on same object with different CRUD options?在具有不同 CRUD 选项的同一对象上记录规则?
【发布时间】:2014-03-21 02:29:59
【问题描述】:

我需要对同一对象应用不同的记录规则,以根据记录的状态赋予不同的访问权限。 例如有三个阶段:stage1、stage2、stage3。

在第一阶段,具有特定访问权限组的用户可以这样做:

读、写、创建自己的记录。当他按下按钮进入 stage2 时,他只能读取该记录(如果该记录将返回 stage1 - 而不是该用户,那么他可以做以前的事情)。在 stage3 上,该用户看不到任何记录,也看不到他的或其他任何人。

我试着做这样的事情:

第一条规则(适用 r、w、c):

[('user_id','=',user.id)]

这个有效。 但是当我进入其他阶段时会遇到问题。 我尝试创建另一个规则 2(应用 r):

[('stage','=','stage2')] 但它不起作用,该用户仍然可以做他在stage1中可以做的任何事情。

如果我制定这样的规则(适用 r、w、c):

['|', ('user_id','=',user.id),('stage','=','stage1')]

然后它给出了您无法进入下一阶段的访问权限错误,因为您在该阶段没有读取访问权限。 怎么解决?..

【问题讨论】:

    标签: python openerp record crud access-rights


    【解决方案1】:

    看来这个可行:

    需要创建两条规则(适用r、w、c):

    ['&', ('user_id','=',user.id),('state','=','stage1')]

    第二条规则(适用 r):

    [('stage','=','stage2')]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多