什么是Invalid leaf [odoo中的错误?

时间:2018-04-30 10:50:10

标签: odoo odoo-9

将过滤器应用于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(&#34;无效的叶子%s&#34;%str(self.leaf))

ValueError:无效的叶[

3 个答案:

答案 0 :(得分:1)

在Odoo中,域名比较包含三叶元组,例如:

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

该错误消息通常意味着这3个叶子中的一个是错误的。检查您的域名以进行修复。

答案 1 :(得分:1)

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

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

并确保在Deactivated中定义了字段olims.analysis_profile(大写字母D)。 希望它会对你有所帮助。

答案 2 :(得分:0)

试试这段代码:

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>