odoo序列号生成错误TypeError:“布尔”对象不可下标

时间:2019-03-05 10:12:27

标签: odoo-11

我是odoo的初学者。 这里有一个问题使我受挫。 我想在创建列表时自动生成一个序列号。

name = fields.Char("過磅單號", compute="_generate", store=True)

    @api.multi
    @api.onchange("name")
    def _generate(self):
    '''WL + 190227 + 001...999
                2    +  6          + 3
                '''
    # prefix WL + yymmdd
    _serial = 'WL' + dt.today().strftime("%y%m%d")

    # search today's last one data on db
    obj = self.env['yc.weight'].search([('name', '=like', _serial + "%")], limit=1, order='name DESC')
    if obj:  
        _next = int(obj[0].name[8:]) + 1
        _serial += '%03d' % _next
    else:
        _serial += '001'
    self.name = _serial

抛出错误:

  

_next = int(obj [0] .name [8:])+ 1

     

TypeError:“布尔”对象不可下标

但是它可以在终端机上工作

>>> obj[0].name
'WL190305058'
>>> _next = int(obj[0].name[8:]) + 1
>>> _next
59

我知道ir.sequence模型可以解决这个问题, 但我仍然想知道怎么回事。

谢谢

0 个答案:

没有答案