使用如下代码:
<field name="progress" attrs="{'column_invisible':[('parent.state','in',
['draft'])]}"/>
在 XML 中:
<notebook>
<page name="Lines">
<field name="task_line_ids">
<tree string="Tasklines" editable="bottom">
<field name="product_id" />
<field name="description"/>
<field name="um_id"/>
<field name="progress" attrs="{'column_invisible':
[('parent.state','in',['draft'])]}"/>
</tree>
</field>
</page>
</notebook>
此代码用于在 odoo11(及以后) 中隐藏 one2many(tree) 中的字段
这种类型的代码仅适用于条件为“父”的情况
另外:
attrs="{'column_invisible': ['|', (Your First Domain), (Your Second Domain)]}"
首先,如果它满足条件,它会检查您的 First域,然后它将执行隐藏,如果不满足第一个条件,那么它将检查第二个条件。
文档翻译
该column_invisible属性用于 Odoo 视图的 XML 定义中,以指定某个字段不应显示在视图中。它通常用于树视图,但也可以用于其他类型的视图。
要使用该column_invisible属性,您需要将其包含在要隐藏的字段的元素中。例如,要在树视图中隐藏“描述”字段,您可以使用以下 XML:
<tree>
<field name="name" />
<field name="status" />
<field name="description" column_invisible="1" />
</tree>
在此示例中,“name”和“status”字段将显示在树视图中,但“description”字段将被隐藏。
您还可以将column_invisible属性与 attrs属性结合使用,attrs以指定应根据特定条件隐藏某个字段。例如,您可以使用以下 XML 仅在“status”字段的值为“done”时隐藏“description”字段:
<tree>
<field name="name" />
<field name="status" />
<field name="description" column_invisible="1" attrs="{'invisible': [('status', '=', 'done')]}" />
</tree>
在此示例中,该attrs属性用于指定一个域,该域确定何时应隐藏“description”字段。该域的语法与column_invisible属性中使用的域相同,其中包含一个元组列表,指定要隐藏该字段必须满足的条件。