我想根据特定“场景”的'类'来过滤'类型'的列表,但它会产生空字段或DataError,具体取决于在我使用的过滤器上。Odoo 9.0域,三个模型和两个many2one字段
domain=[('aclass.name', '=', 'aclass_id.name')]
=空选择字段,
domain=[('aclass.id', '=', 'aclass_id.id')]
=
...
res = self._obj.execute(query, params)
DataError: invalid input syntax for integer: "aclass_id.id"
LINE 1: ...ass".id FROM "test_aclass" WHERE "test_aclass".id = 'aclass_id...
^
这是我的model.py
# -*- coding: utf-8 -*-
from openerp import models, fields, api
class Aclass (models.Model):
_name = 'test.aclass'
name = fields.Char()
description = fields.Text()
class Atype (models.Model):
_name = 'test.atype'
name = fields.Char()
description = fields.Text()
aclass = fields.Many2one('test.aclass')
class Ascenario(models.Model):
_name = 'test.ascenario'
name = fields.Char()
description = fields.Text()
aclass_id = fields.Many2one('test.aclass')
atype_id = fields.Many2one('test.atype', domain=[('aclass.id','=','aclass_id.id')])
和窗体视图:
<openerp>
<data>
<record model="ir.ui.view" id="ascenario_form_view">
<field name="name">ascenario.form</field>
<field name="model">test.ascenario</field>
<field name="arch" type="xml">
<form string="Scenario">
<sheet>
<group string="Scenario">
<field name="name"/>
<field name="description"/>
<field name="aclass_id"/>
<field name="atype_id"/>
</group>
</sheet>
</form>
</field>
</data>
</openerp>
的atype_id场在ascenario_form_view正确地显示在没有域我错过了A型列表...
? TY。
感谢您的输入。但是,该选项仍会导致视图表单中的空(atype_id)选择字段。缺了点什么。 – Louis
'test.aclass'中是否有任何数据? –
当然;) - 正如我所提到的,“ascenario_form_view中的atype_id字段在没有域时正确显示Atype列表...”//但atype_id未根据aclass_id过滤 – Louis