我们可以根据odoo的情况隐藏主树视图中的列吗

问题描述 投票:0回答:1

我一直在 odoo 16 中自定义库存模块,我们有多种操作类型,每个单独的操作类型在表单字段中都有不同的字段,所以我希望在(主树)树视图中具有相同的字段,但我无法使根据条件该列不可见

例如1:

<field name="project_name" attrs="{'column_invisible': [('picking_type_code', '!=', 'incoming')]}'/>

前2:

<field name='project_name" invisible="context.get('projet_name',False)"/>

前3:

<field name="project_name" attrs="{'invisible': [('project_name', '=', False)]

前4:

<field name="project_name" invisible=context.get('picking_type_code')!='incoming'"/>

这些都是我尝试过的代码尝试,如果您有任何不同的想法..请分享

tree odoo treeview field hide
1个回答
1
投票
  1. 您可以使用以下语法:

     invisible="context.get('quotation_only', False)" 
    

    您可以在购买模块中找到示例。该值通过 action context

    传递

    invisible 的值是一个将在当前上下文中计算的表达式,您可以使用以下语法:

    context.get('picking_type_code') != 'incoming'
    
  2. 您还可以使用

    invisible
    属性:

     attrs="{'invisible': ['|', '|', ('state', '=', 'purchase'), ('state', '=', 'done'), ('state', '=', 'cancel')]}"
    

在第一个示例中,Odoo 隐藏了列,在第二个示例中,字段的可见性取决于另一个字段的值,该字段隐藏了相应行中的字段。

对于

column_invisible
属性,您可以阅读 文档中的以下注释:

如果是列表子视图(One2many/Many2many 显示在表单视图中),属性 column_invisible 可用于根据父对象隐藏列。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.