仅当名为street2
的字段值为is_company
时,我才会在现有的OpenERP7视图中隐藏名为True
的字段。我必须使用继承来执行此操作,因此我使用名为res.partner.extended.form
的表单创建了一个新视图,该表单继承自我要修改的视图(base.view_partner_form
)。
为了使street2
不可见,我以这种方式离开了我的继承形式:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record model="ir.ui.view" id="res_partner_extended_view">
<field name="name">res.partner.extended.form</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form" />
<field name="type">form</field>
<field name="arch" type="xml">
<xpath expr="/form//field[@name='street2']" position="attributes">
<attribute name="invisible">1</attribute>
</xpath>
</field>
</record>
</data>
</openerp>
但是这样,无论条件如何,我都会让这个领域变得不可见。只有在is_company
值True
时才需要隐藏它。所以我尝试了几种方法,但我无法管理它。下一行是我失败的尝试之一:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record model="ir.ui.view" id="res_partner_extended_view">
<field name="name">res.partner.extended.form</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form" />
<field name="type">form</field>
<field name="arch" type="xml">
<xpath expr="/form//field[@name='street2']" position="attributes">
<attribute name="invisible">[('is_company', '=', 'True')]</attribute>
</xpath>
</field>
</record>
</data>
</openerp>
任何人都知道如何管理这个?我接近答案了吗?任何帮助将不胜感激。提前谢谢。
答案 0 :(得分:2)
试试这个,
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record model="ir.ui.view" id="res_partner_extended_view">
<field name="name">res.partner.extended.form</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form" />
<field name="type">form</field>
<field name="arch" type="xml">
<field name='street2' position="attributes">
<attribute name="attrs">{'invisible': [('is_company', '=', True)]}</attribute>
</field>
</field>
</record>
</data>