Odoo 功能不工作

Odoo function not working

OpenErp 8 - Python

我有场地。当使用更改 compute_date 时,然后单击按钮保存。更改 state_for_date :

if compute_date > 20 那么 state_for_date = comp

如果 compute_date < 20 那么 state_for_date = 新的

state_for_datestatusbar

compute_date = fields.Integer('Int')

state_for_date = fields.Selection([('new', 'New'),
                                       ('comp', 'Comp')],
                                        'State', default='new', required=True)

 def write(self, vals):

       if self.compute_date < 20:
             vals = {'state': 'new'}

       if self.compute_date > 20:
             vals = {'state': 'comp'}

       return self.write(vals)

无法正常工作帮助我 错误:运行时错误:超过最大递归深度

您正在调用递归写入方法而不是调用超级方法。 您需要调用超级方法。

def write(self, vals):
    if self.compute_date < 20:
        vals = {'state': 'new'}
    if self.compute_date > 20:
        vals = {'state': 'comp'}
    return super(class_name, self).write(vals)