【发布时间】:2014-03-06 07:39:52
【问题描述】:
似乎 onchange 方法仅适用于当前可见字段。如果我用它来填充视图其他页面中的其他字段,它不会做任何事情。例如,我有很多页面的视图。主要是第一页需要填写所有信息,所以大部分字段填写正确。但是当我在另一个页面中选择partner_id 时,我需要在另一个页面中填写一个字段。例如在这样的视图中:
...
<page string="page1">
<field name=partner_id on_change="onchange_partner(partner_id)"
<field name="field1"/>
<field name="field2"/>
</page>
<page string="page2">
<field name="field3"/>
</page>
...
field1 和 field2 将被填充。但是如何填写field3还是不可能,因为系统没有使用onchange方法将其保存到数据库中?
我的 onchange 方法如下所示:
def onchange_partner(self, cr, uid, ids, partner_id, context=None):
res = {}
if partner_id:
obj = self.pool.get('res.partner').browse(cr, uid, partner_id)
res['field1'] = obj.field1
res['field2'] = obj.field2
res['field3'] = obj.field3 # this value isn't being filled
return {'value': res}
那么我该如何填写field3?
【问题讨论】:
-
检查你的 'field3' 和 obj.field3 的字段类型是否相同?
标签: python xml view openerp onchange