Python 在OpenERP的树状视图中有选择地显示或隐藏按钮
我已将按钮(图标为绿色箭头)放置在树视图中。我只想在记录有BOM表时显示一个按钮。我确实有逻辑如何找到它,但不知道如何有选择地显示或隐藏按钮 此外,加载视图时应触发“显示”或“隐藏”按钮操作。既然没有像VisualBasic中那样的view\u on\u load事件,我该怎么做呢 以下是树视图: 以下是如何在XML文件中定义按钮:Python 在OpenERP的树状视图中有选择地显示或隐藏按钮,python,xml,openerp,odoo,Python,Xml,Openerp,Odoo,我已将按钮(图标为绿色箭头)放置在树视图中。我只想在记录有BOM表时显示一个按钮。我确实有逻辑如何找到它,但不知道如何有选择地显示或隐藏按钮 此外,加载视图时应触发“显示”或“隐藏”按钮操作。既然没有像VisualBasic中那样的view\u on\u load事件,我该怎么做呢 以下是树视图: 以下是如何在XML文件中定义按钮: <!-- mrp_bom --> <record id="adamson_mrp_bom_form_view" model="i
<!-- mrp_bom -->
<record id="adamson_mrp_bom_form_view" model="ir.ui.view">
<field name="name">adamson.mrp.bom.form.view</field>
<field name="model">mrp.bom</field>
<field name="type">form</field>
<field name="inherit_id" ref="mrp.mrp_bom_form_view" />
<field name="arch" type="xml">
<xpath expr="//notebook/page[@string='Components']/field/tree[@string='Components']/field[@name='sequence']" position="before" >
<button class="oe_inline oe_stat_button" type="object" string="Go!" icon="gtk-go-forward" name="action_go" />
</xpath>
例如,您可以使用attrs
attrs="{'invisible':[('selection_field_name','=','value')]}"
注意:我们需要给出存储在数据库中的值
试试这个
<xpath expr="//notebook/page[@string='Components']/field/tree[@string='Components']/field[@name='sequence']" position="before" >
<button class="oe_inline oe_stat_button" type="object" string="Go!" icon="gtk-go-forward" name="action_go" attrs="{'invisible':[('type','=','normal')]}" />
</xpath>
我不确定如何选择“选择\字段\名称”。出于这个原因,我用逻辑代码更新了我的问题。如果你能给我举个例子,那就太棒了。谢谢我可以知道您要从哪个条件字段隐藏/显示按钮吗?在代码中,我有bom_ID列表,它是特定产品是否有bom的指示器。这个列表很可能只有一个元素。如果列表为空,则使按钮不可见。如果bom\u ID列表中有一个元素,则显示按钮。bom\u ID未存储在数据库中,因此我们无法通过这些方法实现。您需要在对象上添加一个布尔字段,并将其设为默认值false。现在在代码中,如果bom_ID有值,则将其设置为true,否则为false。基于布尔字段的按钮隐藏/显示。希望你能明白。听起来是个好主意!!我有这个想法,但我对OpenERP和Python非常陌生。请给出一个代码示例:1)如何向对象添加布尔字段(我对如何添加有一个模糊的想法,但不确定)。2) 如何在代码中为该字段赋值。非常感谢你的帮助。
<xpath expr="//notebook/page[@string='Components']/field/tree[@string='Components']/field[@name='sequence']" position="before" >
<button class="oe_inline oe_stat_button" type="object" string="Go!" icon="gtk-go-forward" name="action_go" attrs="{'invisible':[('type','=','normal')]}" />
</xpath>