如何将Odoo产品唯一字段name作为ID导入以更新价格
解决Odoo用产品名称作为唯一标识导入更新价格的问题
步骤1:移除产品名称的UNIQUE约束
先把之前给product.name字段加的唯一约束去掉——这个约束会直接阻断更新操作,触发“product name already exists”错误。你可以在Odoo的产品模型(product.product或product.template,取决于你使用的模型)设置界面,编辑name字段属性,取消“唯一”选项;也可以直接在数据库层面删除对应的唯一索引。
步骤2:配置导入匹配规则与模式
- 进入Odoo导入功能,上传目标CSV文件后,在字段映射环节,将CSV里的
name字段与Odoo产品模型的name字段绑定为匹配键。 - 关键要在导入模式里选择**“更新现有记录”**(部分版本叫“更新”或“更新或创建”,若需同时新增不存在的产品可选后者)。这个设置会告诉Odoo:用name匹配已有产品,匹配到就更新价格,未匹配到再考虑创建(仅当选了“更新或创建”时)。
步骤3:确认价格字段映射准确
确保CSV里的price字段对应到Odoo正确的价格字段:
- 销售价对应
list_price - 成本价对应
standard_price
避免因字段选错导致价格更新到错误位置。
步骤4:小批量测试后再批量导入
先选2-3条产品数据做测试导入,验证现有产品价格是否被正确更新、无重复项生成。确认无误后再导入全部数据。
内容的提问来源于stack exchange,提问作者Hasabalrasool Yaseen
相关产品推荐
相关产品推荐

