2017-06-03 46 views
1

在我创建的模型中,我实现了写入方法来更新另一个模型字段,所以我想对每个记录创建执行此操作,但仅适用于odoo invoque方法更新记录时。Odoo:只有在更新模型时才写入方法

在这里它是从模型

class formulaire_evaluation(models.Model): 
    _name = 'pncevaluation.fe' 
    _description = u"Formulaire d\'évaluation" 
    name = fields.Char(u"Intitulé du formulaire") 
    contributeur = fields.Many2one('pncevaluation.contributeur',string="Contributeur") 
    date = fields.Date(u"Date") 


    @api.multi 
    def write(self, vals): 
     rec = super(formulaire_evaluation, self).write(vals) 
     #my_custom_code 
     return rec 

回答

2

在记录创建时的摘录,Odoo调用ORM 创建()方法。所以在你的情况下,我们需要重写create()方法。

例如:

@api.model 
def create(self, vals): 
    res = super(formulaire_evaluation, self).create(vals) 
    #### your logic to update another model 
    return res 

详情Odoo's ORM methods

注:

如果你想只在记录创建做这个手术,然后用去创建()方法和删除write()方法。否则请同时使用两种方法create()write()

+0

已经完成了,谢谢 –

相关问题