创建新用户时,我想在“访问权限”选项卡中隐藏不必要的内容。 “访问权限”选项卡位于res_users_view中。这是原始代码:
<page name="access_rights" string="Access Rights">
<group string="Multi Companies" attrs="{'invisible': [('companies_count', '<=', 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”中,该如何访问它们?
答案 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