odoo二开(5)如何设置权限文件

1.创建security/{your_add_name}.xml
2.填写xml的声明语句。
3.复制下方的代码。

<record id="{your_add_name}_group_user" model="res.groups">  
    <field name="name">User</field>  
    <field name="category_id" ref="module_library_category" />  
    <field name="implied_ids" eval="[(4, ref('base.group_user'))]" />  
</record>

<record id="{your_add_name}_group_manager" model="res.groups">
 <field name="name">Manager</field>
 <field name="category_id" ref="module_{your_add_name}_category" />
 <field name="implied_ids" eval="[(4, ref('{your_add_name}_group_user'))]" />
 <field name="users" eval="[
 (4, ref('base.user_root')),
 (4, ref('base.user_admin'))
 ]" />
 </record>

文心一言:
在Odoo中,XML记录(<record>)通常用于在数据模型中定义或更新数据。在你给出的例子中,<record> 标签定义了一个 res.groups 模型的记录,该模型用于表示用户组。下面是对这段代码的详细解释:

record标签:

id="library_group_user": 这是该记录的外部ID,可以在其他XML记录或Python代码中引用它。
model="res.groups": 这指定了要创建或更新的模型是res.groups,即用户组模型。
字段(field)标签:
每一个<field>标签代表res.groups模型的一个字段。
字段值:

<field name="name">User</field>:

这设置了用户组的名称为"User"。

<field name="category_id" ref="module_library_category" />:

这设置了用户组的category_id字段。ref属性用于引用另一个XML记录中的ID。在这里,它可能引用了一个在另一个XML文件中定义的名为module_library_category的用户组分类。

<field name="implied_ids" eval="[(4, ref('base.group_user'))]" />:

这设置了implied_ids字段,该字段通常用于表示当一个用户被添加到这个用户组时,他们也应该被自动添加到哪些其他用户组。eval属性允许你在XML中执行简单的Python表达式。在这里,它使用了一个命令列表(command list),这是Odoo中用于处理关系字段的一种特殊语法。(4, ref('base.group_user'))是一个命令,意思是“将base.group_user这个用户组链接到这个用户组”。

base.group_user:

是Odoo基础模块中定义的一个用户组,通常代表系统的基本用户。

总结:

这段代码定义了一个名为"User"的用户组,它属于某个分类(由module_library_category指定),并且当某个用户被添加到这个用户组时,他们也会自动被添加到base.group_user用户组。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容