我想根據特定「場景」的'類'來過濾'類型'的列表,但它會產生空字段或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