如何隐藏OpenERP7视图中的现有字段? [英] How to hide an existing field in an OpenERP7 view?
问题描述
我试图在现有的OpenERP7视图中隐藏名为 street2
的字段,只有当名为 is_company
的字段值真
。我必须使用继承来做到这一点,所以我使用一个名为 res.partner.extended.form
的窗体创建了一个新视图,该窗体从我想要修改的视图继承而来( base.view_partner_form
)。
I am trying to hide a field called street2
in an existing OpenERP7 view only if a field called is_company
values True
. I have to do this using inheritance, so I created a new view with a form called res.partner.extended.form
, which inherits from the view I want to modify (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
时,我才需要使其不可见。所以我尝试了几种方法,但我无法管理它。下一行是我失败的尝试之一:
But this way, I make the field invisible, with any condition. I need to make it invisible only if is_company
values True
. So I tried several ways, and I am not able to manage it. The next lines are one of my failed attempts:
<?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>
任何人都知道如何管理这个?我接近答案吗?任何帮助将不胜感激。
Anyone knows how to manage this? Am I close to the answer? Any help will be appreciated a lot. Thank you in advance.
推荐答案
试试这个,
Try this,
<?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>
这篇关于如何隐藏OpenERP7视图中的现有字段?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!