Python Odoo-更改继承视图上的域

Python Odoo-更改继承视图上的域,python,filter,openerp,Python,Filter,Openerp,我目前正在构建一个自定义模块,并扩展了度量单位类(product.uom)。我希望根据我的一个新变量的特定值,从列表/树视图中删除一些计量单位条目 我不完全确定如何修改这个视图。我似乎在读到我需要指定一个域,比如domain=[(“myvariable”,“=”,True)],但我不完全确定如何应用它。我试着继承树视图,并添加一个域,但这不起作用 任何帮助都将不胜感激 解决方案: 计量单位 产品单位 [(“myvariable”,“!=”,True)] 树 要执行Nross2781所查找的操作

我目前正在构建一个自定义模块,并扩展了度量单位类(product.uom)。我希望根据我的一个新变量的特定值,从列表/树视图中删除一些计量单位条目

我不完全确定如何修改这个视图。我似乎在读到我需要指定一个域,比如domain=[(“myvariable”,“=”,True)],但我不完全确定如何应用它。我试着继承树视图,并添加一个域,但这不起作用

任何帮助都将不胜感激

解决方案:


计量单位
产品单位
[(“myvariable”,“!=”,True)]
树

要执行Nross2781所查找的操作,您必须覆盖记录的ir.actions.act_窗口

<record model="ir.actions.act_window" id="uom_list_action">
    <field name="name">Units Of Measurement</field>
    <field name="res_model">product.uom</field>
    <field name="domain">[("myvariable","!=",True)]</field>
    <field name="view_mode">tree,form</field>
</record>

计量单位
产品单位
[(“myvariable”,“!=”,True)]
树

但是,您可能需要考虑将过滤器添加到搜索视图中,这将更加灵活。您还可以看到默认情况下不显示的记录

<record model="ir.ui.view" id="uom_search_view">
    <field name="name">uom.search</field>
    <field name="model">product.uom</field>
    <field name="arch" type="xml">
        <search string="Units Of Measurement">
            <filter name="my_var_is_true" string="My Variable" domain="[('myvariable','=',True)]"/>
            <filter name="my_var_is_false" string="Not My Variable" domain="[('myvariable','!=',True)]"/>
        </search>
    </field>
</record>

计量单位搜索
产品单位

因此,您希望列表/树视图中的整行不基于myvariable=True显示,或者希望该行中的某个字段不基于此条件显示?是的,这就是我试图实现的。行或字段是哪一行。哦,对不起,我读到了您的评论。我希望根据数据库中行的值显示或不显示整个记录。这是表单视图中的树/列表还是完整页面列表视图?仅在我这边声明这一点是不够的。我还必须覆盖菜单项,因为它们只是简单地称为另一个操作窗口。我已经在我原来的帖子中添加了代码。另外,我试图给你投票,但是我没有名声。它不会让我。对不起…:-\@phillipstack:使用自定义模块,我将覆盖原始操作。这里您只创建一个新的。但除此之外,您的第二个解决方案要好得多,所以我投赞成票。@Nross2781:您不需要投赞成票,但作为提问者,您应该将其标记为正确答案。@Nross2781如果您能将其标记为正确答案,我将不胜感激。