在Odoo 10中修改访问权限

时间:2018-09-05 08:34:34

标签: odoo-10

创建新用户时,我想在“访问权限”选项卡中隐藏不必要的内容。 “访问权限”选项卡位于res_users_view中。这是原始代码:

<page name="access_rights" string="Access Rights">
 <group string="Multi Companies" attrs="{'invisible': [('companies_count', '&lt;=', 1)]}">
  <field string="Allowed Companies" name="company_ids" widget="many2many_tags"/>
  <field string="Current Company" name="company_id" context="{'user_preference': 0}"/>
  <field string="Companies count" name="companies_count" invisible="1"/>
 </group>
 <field name="groups_id"/>
</page>

我要隐藏的是一组名为“ sel_groups_xx”和“ in_group_yy”的字段(xx和yy是数字)。这是我的代码(我尝试先隐藏1个字段):

<record id="view_users_form_inherit" model="ir.ui.view">
 <field name="name">res.users.form</field>
 <field name="model">res.users</field>
 <field name="inherit_id" ref="base.view_users_form" />
 <field name="arch" type="xml">
  <xpath expr="//form/sheet/notebook/page[@name='access_rights']/field[@name='groups_id']" position="replace">
   <field name="sel_groups_24" invisible="1"/>
  </xpath>
 </field>
</record>

但是,它返回了一条错误消息。

  

ParseError:“验证约束时出错

     

元素“ field name =“ groups_id””不能位于父视图中

     

错误上下文:视图res.users.groups [view_id:155,xml_id:   base.user_groups_view,模型:res.users,parent_id:152]“无”,而   解析   /home/Documents/odoo/modify/views/users_add_position_view.xml:15

我的第一个问题,我是否应该假设“ sel_groups_xx”和“ in_groups_yy”在“ groups_id”内部?如果这些字段确实位于“ groups_id”中,该如何访问它们?

1 个答案:

答案 0 :(得分:1)

“ sel_groups_xx”和“ in_groups_yy”是根据用户groups_id字段基于现有res.groups记录生成的字段。它们由res.users方法_update_user_groups_view动态创建到视图base.user_groups_view中。

如果您想隐藏它,则足以将该视图设置为非活动状态。无需查看view_users_form_inherit