首页 > 解决方案 > Odoo Many2many 字段也只能通过循环获得单个记录

问题描述

我在模型中有很多字段。我面临的问题是无法获取其他记录 ID,但只能获取第一个 ID。

field_name = fields.Many2many('res.partner')

for rec in self:
for customer in rec.field_name:
table_name = self.env['custom.model'].search([('customer_id','=',customer.id)])
for x in table_name:
    x.write({'value': value})

标签: pythonxmlpostgresqlodoo

解决方案


是的。由于您的域搜索,它将始终返回一个记录集customer.id

不确定您的目标,但如果您想搜索类似的客户名称,请使用以下域。

self.env['custom.model'].search([('customer_id.name', 'ilike', customer.name)])

或者

使用不带客户 ID 的搜索域值。


推荐阅读