library_security.xml 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <odoo>
  2. <data>
  3. <!-- Library User Group -->
  4. <!--id:用户组的外部标识符。用于在代码中引用这个用户组
  5. model:用户组模型。用于指定记录属于哪个模型-->
  6. <record id="library_group_user" model="res.groups">
  7. <!--name:用户组名称,显示在odoo用户界面中-->
  8. <field name="name">User</field>
  9. <!--category_id:用户组所属分类,这里引用base.module_category_services_library-->
  10. <field name="category_id" ref="base.module_category_services_library" />
  11. <!--implied_ids:继承的用户组列表。这里表示该用户组继承了base.group_user组-->
  12. <!--ref 是一个函数,用于引用外部标识符。
  13. 4 是一个操作码,表示“将记录添加到关联字段中”-->
  14. <field name="implied_ids" eval="[(4, ref('base.group_user'))]" />
  15. </record>
  16. <!-- Library Manager Group -->
  17. <record id="library_group_manager" model="res.groups">
  18. <field name="name">Manager</field>
  19. <field name="category_id" ref="base.module_category_services_library" />
  20. <field name="implied_ids" eval="[(4, ref('library_group_user'))]" />
  21. <!--users:定义用户组的用户-->
  22. <field name="users"
  23. eval="[(4, ref('base.user_root')),
  24. (4, ref('base.user_admin'))]" />
  25. </record>
  26. </data>
  27. <!--记录规则位于<data noupdate="1">元素中,表示这些记录在安装模块时会被创建,但在模块更新时不会重写。-->
  28. <data noupdate="1">
  29. <!--ir.rule记录规则模型-->
  30. <record id="book_user_rule" model="ir.rule">
  31. <field name="name">Library Book User Access</field>
  32. <field name="model_id" ref="model_library_book" />
  33. <!--domain_force:定义一个域,用于指定哪些记录对用户可见-->
  34. <field name="domain_force">
  35. [('active','=',True)]
  36. </field>
  37. <!--groups:指定哪些用户组可以访问这些记录-->
  38. <field name="groups" eval="[(4,ref('library_group_user'))]" />
  39. </record>
  40. </data>
  41. </odoo>