继承抽象模型"mail.activity.mixin"后,父模型"crm.lead"无法保存数据



我创建了一个新类来继承抽象模型"mail.activity.mixin",但在使用父类crm.lead后无法存储数据。我做不到。有人能告诉我怎么做吗?这是我的代码

class forcaMailMixin(models.AbstractModel):
_inherit = 'mail.activity.mixin'
@api.multi
def write(self, vals):
check_undone = self.env['mail.activity'].sudo().search(
[('res_model', '=', self._name), ('res_id', 'in', self.ids), ('status', '!=', 1)] ,order = 'create_date desc', limit=1)
if check_undone :
value = {
'activity_date_deadline' : check_undone.date_deadline,
'activity_summary' : check_undone.summary
}
else :
value = {
'activity_date_deadline' : "",
'activity_summary' : ""
}
return super(forcaMailMixin, self).write(value)

您已经覆盖了写入值。因此,原始值永远不会进入超级调用,在那里发生了神奇的事情(写入数据库(。

所以你应该在最后的超级调用之前更新原始值:

vals.update(value)
return super(forcaMailMixin, self).write(vals)

最新更新