首页 > 解决方案 > 不能基于访问权限来查看视图

问题描述

<record id="view_res_partner_pricelist" model="ir.ui.view">
    <field name="name">view.res.partner.pricelist.form</field>
    <field name="model">res.partner</field>
    <field name="type">form</field>
    <field name="inherit_id" ref="product.view_partner_property_form" />
    <field name="context">{'readonly_by_pass': True}</field>
    <field name="arch" type="xml">
        <xpath expr="//page[@name='accounting']" position="replace"/>
    </field>
</record>

这是我隐藏选项卡“会计”的视图,如果打开联系表单的用户具有会计和财务访问权限,它可以正常工作,但如果用户没有它们,那么我会收到错误

AttributeError: Element '<xpath expr="//page[@name='accounting']">' cannot be located in parent view

Error context:
View `view.res.partner.pricelist.form`

我怎样才能为没有会计和财务访问权限的用户进行这项工作?

标签: odooodoo-9

解决方案


有趣...您应该通过在视图的 groups_id 字段的视图记录定义中添加组要求来解决它,例如:

<record id="view_res_partner_pricelist" model="ir.ui.view">
    <field name="name">view.res.partner.pricelist.form</field>
    <field name="model">res.partner</field>
    <field name="type">form</field>
    <field name="inherit_id" ref="product.view_partner_property_form" />
    <field name="context">{'readonly_by_pass': True}</field>
    <field name="groups_id" eval="[(4, ref('account.group_account_invoice'))]"/>
    <field name="arch" type="xml">
        <xpath expr="//page[@name='accounting']" position="replace"/>
    </field>
</record>

推荐阅读