在odoo treeview中隐藏一些行

Hide some lines in odoo treeview

我试图根据特定标志在树视图中隐藏一些行,这是我的树视图的 xml 代码:

<record model='ir.ui.view' id='my_object_tree'>
    <field name="name">my_object.tree</field>
    <field name="model">my_object</field>
    <field name="arch" type="xml" >
        <tree string="title" attrs="{'invisible': [('my_flag','=',False)]}">
            <field name="name"/>
            <field name="my_flag"/>
        </tree>
    </field>
</record>

但是"invisible"似乎在这里不起作用, 我可以隐藏所有字段,但在这种情况下,空行将出现在树视图中。 请问还有其他解决办法吗?

列表视图中显示的对象由作为操作定义的一部分的域确定:

<record model="ir.actions.act_window" id="my_object_action">
    <field name="name">my_object.action</field>
    <field name="res_model">my_object</field>
    <field name="view_mode">tree,form</field>
    <field name="domain">[
        ('my_flag', '=', True)
    ]</field>
</record>

您可以像我使用的那样在操作中设置 DOMAIN...

<record id="action_hr_employee" model="ir.actions.act_window">
        <field name="name">Employee</field>
        <field name="res_model">hr.employee</field>
        <field name="view_type">form</field>
        <field name="view_mode">tree,form</field>
        <field name="domain">[('type', '=', 'temporary')]</field>
        <field name="context">{}</field>
        <field name="view_id" eval="False"/>
        <field name="help" type="html">
            <p class="oe_view_nocontent_create">Click to add a new temporary Employee.</p>
        </field>
    </record>

上面的代码将只显示那些 type = temporary

的记录