什么是无效叶 [odoo 中的错误?

What is Invalid leaf [ error in odoo?

在对 many2many 字段应用过滤器时出现此错误。

python 中的字段定义是: 这是 python

中的字段定义
fields.Many2many(string='AnalysisProfile',
                    comodel_name='olims.analysis_profile',
                    relation='ar_to_analysisprofile',
                    domain="[('Deactivated', '=',False )]"

并在 XML 视图中:

 <field name="AnalysisProfile" string="Analysis Profile"></field>

我收到以下错误:

引发 ValueError("Invalid leaf %s" % str(self.leaf))

ValueError:无效的叶 [

在 Odoo 中,域比较包含在一个 3 叶元组中,例如:

('field', "=", 'value')

该错误消息通常表示这 3 张树叶中有一张是错误的。检查您的域以修复它。

您在域中添加了额外的双引号,请将其删除并尝试。

fields.Many2many(string='AnalysisProfile',
                comodel_name='olims.analysis_profile',
                relation='ar_to_analysisprofile',
                domain=[('Deactivated', '=',False )])

并确保您在 olims.analysis_profile 中定义了一个字段 Deactivated(大写字母 D)。 希望它能帮助你。

试试这个代码:

Python 文件:

def _analysis_profile(self):

    return [('Deactivated', '=', False)]

AnalysisProfile = fields.Many2many(string='AnalysisProfile',
                    comodel_name='olims.analysis_profile',
                   relation='ar_to_analysisprofile',
                   domain=_analysis_profile)

XML 文件:

<field name="AnalysisProfile" string="Analysis Profile" widget="many2many_tags"></field>