python - 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})
解决方案
是的。由于您的域搜索,它将始终返回一个记录集customer.id
。
不确定您的目标,但如果您想搜索类似的客户名称,请使用以下域。
self.env['custom.model'].search([('customer_id.name', 'ilike', customer.name)])
或者
使用不带客户 ID 的搜索域值。
推荐阅读
- karate - 空手道黄瓜在 Junit 4 中报告,没有并行执行
- squid - squid :阻止目标子网或 IP 地址
- php - 基于特定子数组值随机化多维数组?
- python - Python 显示矩阵(嵌套元组)
- gekko - GEKKO优化器@error:不等式定义无效的不等式:z > x < y
- python-3.x - Pytorch、INPUT(正常张量)和 WEIGHT(cuda 张量)不匹配
- python - 绑定 C 函数 Python 时的问题
- python - Kivy - 使用实现的 ScrollView 在 GridLayout 中更改 FloatLayout 的行高
- javascript - 反应更新 setState 将字符串转换为数组
- php - PHP 返回一个对象的实例