我想在ODOO-10中建立一个非瞬态模型和瞬态模型之间的关系。我们已经创建了一个进行一些复杂计算的瞬态模型,现在我们希望将这些数据显示在非瞬态模型形式上,但是由于瞬态和非瞬态模型关系的限制,无法做到这一点。
发布于 2019-06-23 15:32:18
在正常模型和瞬态模型之间允许的唯一关系是:
T ---- M2o ----- > M
M ------ M2M ------> T因此,如果您想要像One2many这样的行为,使用一个计算的Many2many并填充它,只需一个简单的搜索调用。
发布于 2019-06-24 05:02:30
在非瞬态模型中,定义一个打开向导的按钮。
非瞬变模型中的
def open_wiz(self):
wiz=self.env['your_wizard_name'].create(
{
'xn_id':self.id, #your_non transient_model's id #not compulosory
'field1':feild1_data,
'field2':field2_data
}
return {
'name':'Display',
'view_type':'form',
'view_mode':'form',
'res_model':'your_wizard_model_name',
'type':'ir.actions.act_window',
'res_id':wiz.id,
'target':'new',
}在模型中的应用
如果要更改向导中的数据并在非瞬态模型中进行反映,请调用Super写函数并传递数据。例:
@api.multi
def write(self,vals):
res=super(wiz_class_name,self).write(vals)
self.xn_id.write({'field1':self.data_from_wiz})
return reshttps://stackoverflow.com/questions/56697587
复制相似问题