0

我正在尝试创建一个简单的函数来返回 active_ids 中的 Id 串联列表。但我不断收到此错误:

TypeError: 'builtin_function_or_method' object has no attribute '__getitem__' 

代码如下:

def _test(self, cr, uid, context=None):
    if context is None:
        return False
    result = 'Sel: '
    for id in context.get['active_ids']:
        result = result + '[' + id + ']'
    return result

_columns = {
    'test': fields.text('Test')
}

_defaults = {
    'test': _test
}

我想我无法理解的是函数中的返回类型。当我查看现有代码时,有时会看到返回数组 ([]),有时会返回 {},有时会看到 res[0][0] 之类的东西,我认为它们是单个值。

请协助。

谢谢

编辑:工作代码:

def _test(self, cr, uid, context=None):
    if context is None:
        return False
    result = 'Sel: '
    if context.get('active_ids'):
        for id in context.get('active_ids'):
            result = result + '[' + str(id) + ']'
    return result
4

1 回答 1

1

错误消息表明context.get是一种方法,而不是字典。因此,以下

for id in context.get['active_ids']:

应该读

for id in context.get('active_ids'):
于 2013-03-15T08:22:21.890 回答