首页 > 解决方案 > 未使用不同类型触发的更改

问题描述

我覆盖 onchange_partner_id 并且如果我创建类型为“contact”的联系人但如果我选择类型“delivery address”则不会触发onchange..为什么会这样,我该如何解决?

def onchange_parent_id(self, cr, uid, ids, parent_id, context=None):
        res = super(ResPartner, self).onchange_parent_id(cr, uid, ids, parent_id, context=context)
        new_contact_obj = self.browse(cr,uid,ids,context=context)
        parent_obj = self.browse(cr,uid, parent_id,context=context)
        if not new_contact_obj.multiply_pricelists_ids:
            new_contact_obj.multiply_pricelists_ids = parent_obj.multiply_pricelists_ids
        return res

标签: odooodoo-9

解决方案


也许是因为这个检查:

https://github.com/odoo/odoo/blob/4d46569766bdba6c1e5c27b0a454705d400671a7/openerp/addons/base/res/res_partner.py#L352

我认为由于这种情况,onchange 会发生,但不会从父级返回任何值。


推荐阅读