python - 如何在 Form Odoo 中使用安全组?

标签 python xml odoo odoo-9

我在 Odoo 中创建了 4 个访问安全组(a、b、c、d) 这是Security.xml

<record model="ir.module.category" id="module_management">
          <field name="name">Digital</field>
          <field name="description">User access level for this module</field>
          <field name="sequence">4</field>
        </record>

        <record id="group_admin" model="res.groups">
          <field name="name">ADMIN</field>
          <field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
          <field name="category_id" ref="docdigital.module_management"/>
        </record>

        <record id="group_user_one" model="res.groups">
          <field name="name">User One</field>
          <field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
          <field name="category_id" ref="docdigital.module_management"/>
        </record>

        <record id="group_user_two" model="res.groups">
          <field name="name">User Two</field>
          <field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
          <field name="category_id" ref="docdigital.module_management"/>
        </record>

        <record id="group_team" model="res.groups">
          <field name="name">Team</field>
          <field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
          <field name="category_id" ref="docdigital.module_management"/>
        </record>

我创建了我的 View xml。我想使用组访问用户 group_user_one 和组 team。 我先尝试一下我的代码

<record id="projectimage_digital" model="ir.ui.view">
    <field name="name">Overview</field>
    <field name="model">project.digital</field>
    <field name="inherit_id" ref="docdigital.view_project_digital_form"/>
    <field name="arch" type="xml">
      <xpath expr="/form/sheet[1]/notebook[1]/page[1]" position="before">
        <attribute name="groups">group_user_one,group_team</attribute>
        <page string='Overview'>
        <group>
            <group>
            <field name="image_1" widget="image" class="oe_avatar"/>
            <field name="image_2" widget="image" class="oe_avatar"/>
            <field name="image_3" widget="image" class="oe_avatar"/>
            </group>
            <group>
            <field name="image_4" widget="image" class="oe_avatar"/>
            <field name="image_5" widget="image" class="oe_avatar"/>
            <field name="image_6" widget="image" class="oe_avatar"/>
            </group>                
        </group>
        </page>
      </xpath>
    </field>
  </record>

但不工作, 我尝试添加

<field name="groups" eval="[(4, ref('base.group_user_one'))]"/>

有效,但只有一组。我想使用两个组。

最佳答案

我不明白你到底需要什么,但如果你想使用多个组

          <field name="groups" eval="[
                          (5,0,0), // put this first if you want to remove old groups
                         (4, ref('base.group_user_one')),
                          (4, ref('base.second_group')),
           ]"/>

当您使用 4 命令将组添加到旧组时,(5,0,0) 将删除所有记录

关于python - 如何在 Form Odoo 中使用安全组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46484278/

相关文章:

python - 我如何使用 Xml Odoo 创建电子邮件模板

Python MyQLdb execute 不接受参数

python - 如何将字典列表合并到一个字典

xml - 将属性值的 XML 序列转换为字符串?

android - 如何将数学运算应用于 Android 尺寸?

odoo - OpenERP 中的 XML-RPC 在每次事务处理后是否保留数据库连接?

python - 减去 Pandas 时间戳;绝对值

python - 如何格式化 python 记录器的默认消息

xml - 与元素类型 "xsi"关联的属性 "xsi:schemaLocation"的前缀 "beans"未绑定(bind)。在tomcat上运行spring时

python - 如何在Python代码中重定向到另一个表单 View - Odoo 8