在openerp中调用其他字段的onchange函数时更改选择字段值

1 投票
1 回答
1479 浏览
提问于 2025-04-18 08:17

我正在开发一个OpenERP模块。场景是我有一个选择字段,里面包含一些资产的类别。我还有另一个字段,并且它和一个onchange函数关联在一起。现在我想要的是,当我的onchange函数被调用时,选择字段的值能够动态地设置为下拉列表中的某个值。这个选择字段叫“asset_type”,另一个字段叫“categ_temp2”。我尝试了以下的方法,但没有成功。

<field name="categ_temp2" domain="[('parent_id', '!=', False)]" on_change="mmProduct_Category_OnChange(categ_temp2,asset_type)"/>

def mmProduct_Category_OnChange(self,cr,uid,ids,categ_temp2,asset_type):
    for id in ids: 
             emp = self.pool.get('product.product')
             emp.write(cr,uid,ids,{'asset_type', '=', 'phones'})

请帮我指出我的错误,或者指导我如何解决这个问题。谢谢。

1 个回答

1

我在我的Python代码中用以下语法解决了这个问题:

  def myProduct_Category_OnChange(self,cr,uid,ids,categ_temps):
        pro_id=[]
        if (str(categ_temps)=='3'):
            return {'value':{'asset_type': 'phones'}}  

'3' 是类别的ID,这个ID是在第一个字段(也就是categ_temps)上设置的。这样做的意思是,当'categ_temps'设置为ID:3时,asset_type中的值会动态地被选中。

撰写回答