当我在odoo中覆盖create function时给出属性错误

时间:2016-03-09 06:59:12

标签: python odoo-8

在我的模块中,我已按以下方式覆盖了create方法,

def create(self,vals):
    self.setState()
    return super(class_name,self).create(vals)

def setState(self):
    self.temp = False

它给出属性错误,因为在模型中找不到env。如何纠正

2 个答案:

答案 0 :(得分:2)

temp是模型上的常规布尔字段吗? - 然后你可以这样做:

@api.model
def create(self,vals):
    vals['temp'] = False
    return super(class_name,self).create(vals)

答案 1 :(得分:1)

通过这种方式,我们可以覆盖新API中的create和write方法

@api.model
def create(self,vals):
    //Your code goes here//
    return super(class_name, self).create(vals)

@api.multi
def write(self,vals,context=None):
    //Your code goes here//
    return super(class_name,self).write(vals)