OpenERP NotImplementedError on evaluation result of对象.浏览(...)

2024-09-28 17:21:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在浏览记录,如果浏览返回结果,我想执行特定代码。在

这是我的代码:

sub = self.pool.get('subscription.subscription').search(cr,uid,[('partner_id','=',partner.id),('active','=',True)])
if sub:
    mtp.send_mail(cr, uid, level.email_template_id.id, partner.id, context=ctx)

但它不起作用,在计算if条件时,会引发一个异常:

^{pr2}$

我不明白,因为我没有通过检查结果是否存在来迭代结果,也没有调用__iter__方法。在

谢谢你的帮助

干杯


Tags: 代码selfidtruesearchpartneruidget
2条回答

一般情况下,问题是调用browse方法时只有一个ID,而不是ID列表,因此返回值只有一个记录,而不是一个记录列表,因此不可编辑。在

id可以是id列表或数字id

在后一种情况下,browse返回一条不可iterable的记录,而不是iterable记录集合。在

解决方案是确保ids是一个列表。在

在方法定义之后添加此项。在

if not isinstance(ids, list):
    ids = [ids] 

相关问题 更多 >