是否可以使用Odoo中的单个操作按钮更新两个不同的模型?

时间:2015-10-20 05:25:25

标签: python xml openerp odoo

我的问题是我定义了一个功能&一个操作按钮,用于更新不同型号的相同数据。

但我想让它更新两个不同型号的某些字段 个别代码工作正常,但当我合并它们显示错误。

我的代码是这样的。

def function_call(self,cr,uid,ids,vals,context=None):   
       x = self.pool.get('hotel.booking')
       y = self.browse(cr,uid,ids,context=context)
       z = {  
       'name' : y.name,
       'mobile':y.mobile,
       'email_id':y.email_id
        }
       return x.create(cr,uid,z,context=context)    

objz1 = self.pool.get('room.engage')    
currentz1 = self.browse(cr,uid,ids,context=context)
currentz1.status = 'reserved' 
new_valsz1 = {  #dictionary
    'room_num' : currentz1.room_num.room_num,
    'room_type':currentz1.room_type,
    'status': currentz1.status
    }
return objz1.create(cr,uid,new_valsz1,context=context)

操作按钮位于预订表格中..客户输入姓名,手机,email_id,房间号码详细信息。

在上面的代码中,只有删除一个段才会起作用 因此,我希望在一个模型中获取个人详细信息,在另一个模型中获取房间详细信息。

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题 你必须为每个模型都有id来浏览记录并调用create方法两次 (当你写回obj.create(cr,uid,vals,context)时,你返回新创建记录的id。)