Odoo 8服务器动作仅处理首个选中项问题排查求助
Odoo服务器动作仅处理第一条选中条目的问题修复
问题根源是服务器动作代码里用错了变量:在Odoo服务器动作的上下文环境中,object指的是单条记录,而选中的多条记录集合对应的变量是records。你当前循环object自然只能处理第一条记录。
具体修复方案
1. 修正服务器动作代码
把XML里的code字段内容改成下面任意一种写法:
写法一(保持循环逻辑):
for obj in records: obj.validate_invalidate()
写法二(更高效的批量调用):
records.validate_invalidate()
2. 可选优化Python业务方法
你的Python方法已经支持批量处理,还可以简化逻辑,利用Odoo批量写入特性提升效率:
@api.multi def validate_invalidate(self): self.write({'validated': ~self.validated})
内容的提问来源于stack exchange,提问作者odoo newbie
相关产品推荐
相关产品推荐

