domain_force - Odoo 组安全读取自定义模块中的所有记录
domain_force - Odoo group security read all records in custom module
我正在尝试分配一个安全组 (group_user
) 权限,以便能够查看该组 (name_group_info_med
) 的用户生成的所有记录
user_group: 可以看到group_name_information_medium_medical生成的所有记录
group_name_info_med:只能看到它生成的记录
acces_rules.xml如下
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="0">
<record id="info_arch_user_rule" model="ir.rule">
<field name="name">See all</field>
<field name="model_id" ref="model_info_med"/>
<field name="domain_force">
[('create_uid', '=', user.id)]
</field>
<field name="groups" eval="[(4, ref('informed.group_user'))]"/>
</record>
<record id="info_med_user_rule" model="ir.rule">
<field name="name">Informe Medico only for owners</field>
<field name="model_id" ref="model_info_med"/>
<field name="domain_force">
[('create_uid', '=', user.id)]
</field>
<field name="groups" eval="[(4, ref('informed.group_name_info_med'))]"/>
</record>
</data>
</odoo>
欢迎任何帮助建议。
如果您希望一个组有权查看所有记录(无限制),那么您的记录规则应使用 domain_force
of [(1, '=', 1)]
.
<record id="info_arch_user_rule" model="ir.rule">
<field name="name">See all</field>
<field name="model_id" ref="model_info_med"/>
<field name="domain_force">
[(1, '=', 1)]
</field>
<field name="groups" eval="[(4, ref('informed.group_user'))]"/>
</record>
Record Rules Documentation 非常稀少,但您可以在核心代码或 Odoo 后端查看示例(设置 > 技术 > 记录规则)。
免责声明:这是为了让一个组能够查看 所有 条记录,而不仅仅是不同组的记录。正如@CZoellner 在下面的评论中提到的那样,单独使用记录规则是不可能的。
我正在尝试分配一个安全组 (group_user
) 权限,以便能够查看该组 (name_group_info_med
) 的用户生成的所有记录
user_group: 可以看到group_name_information_medium_medical生成的所有记录 group_name_info_med:只能看到它生成的记录
acces_rules.xml如下
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="0">
<record id="info_arch_user_rule" model="ir.rule">
<field name="name">See all</field>
<field name="model_id" ref="model_info_med"/>
<field name="domain_force">
[('create_uid', '=', user.id)]
</field>
<field name="groups" eval="[(4, ref('informed.group_user'))]"/>
</record>
<record id="info_med_user_rule" model="ir.rule">
<field name="name">Informe Medico only for owners</field>
<field name="model_id" ref="model_info_med"/>
<field name="domain_force">
[('create_uid', '=', user.id)]
</field>
<field name="groups" eval="[(4, ref('informed.group_name_info_med'))]"/>
</record>
</data>
</odoo>
欢迎任何帮助建议。
如果您希望一个组有权查看所有记录(无限制),那么您的记录规则应使用 domain_force
of [(1, '=', 1)]
.
<record id="info_arch_user_rule" model="ir.rule">
<field name="name">See all</field>
<field name="model_id" ref="model_info_med"/>
<field name="domain_force">
[(1, '=', 1)]
</field>
<field name="groups" eval="[(4, ref('informed.group_user'))]"/>
</record>
Record Rules Documentation 非常稀少,但您可以在核心代码或 Odoo 后端查看示例(设置 > 技术 > 记录规则)。
免责声明:这是为了让一个组能够查看 所有 条记录,而不仅仅是不同组的记录。正如@CZoellner 在下面的评论中提到的那样,单独使用记录规则是不可能的。