Openerp TypeError: write() got multiple values for keyword argument 'context'

Openerp TypeError: write() got multiple values for keyword argument 'context'

我有这个代码。单击保存按钮时出现此错误。请帮忙解决这个问题。

TypeError: write() got multiple values for keyword argument 'context'

class crm_case_stage(osv.osv):
    _inherit="crm.case.stage"

    _columns = {
                 'name':fields.char('Stage Name'),
                 'email_template_ids':fields.many2many('email.template','email_tempate_rel','template_id'), #Integrate email templates with stage ids
                 'template_count' : fields.integer('Mail Template Count'),
                }

    def write(self, cr, uid, ids, context=None):
        cur_obj=self.browse(cr, uid, ids, context=context)
        self.write(cr, uid, ids,{'template_count':len(cur_obj.email_template_ids.ids)},context=context)

如果您使用的是 Odoo V8+,请尝试使用新的 API:

@api.multi
def write(self, vals):
    res = super(crm_case_stage, self).write(vals)
    for stage in self:
        stage.template_count = len(stage.email_template_ids)
    return res

或旧 API:

def write(self, cr, uid, ids, vals, context=None):
    res = True
    for stage in self.browse(cr, uid, ids, context):
        vals['template_count'] = len(stage.email_template_ids)
        res &= super(crm_case_stage, self).write(cr, uid, ids, vals, context)
    return res