在安装自定义模块时,我需要使用XML将带有标签的客户数据导入 res.partner 。
“客户”数据存储在 res.partner 中,“标记”数据存储在 res.partner.category中,他们通过 res_partner_res_partner_category_rel 建立了关系Many2many。
我在 __ manifest __。py 中调用两个XML文件:
第一个成功填充res.partner.category:
<?xml version="1.0"?>
<odoo>
<record model="res.partner.category" id="res_partner_category_1">
<field name="name">Heavy metal</field>
<field name="active">1</field>
</record>
</odoo>
第二个插入合作伙伴数据:
<?xml version="1.0"?>
<odoo>
<record model="res.partner" id="res_partner_predata_1">
<field name="name">Iron Maiden</field>
</record>
</odoo>
我需要的是将 res.partner 注册表与“重金属”标记一起插入,并安装自定义模块,例如这样:
它的外观如下:
我将非常感谢任何帮助。
答案 0 :(得分:1)
我在Odoo演示数据中找到答案: 当我创建类别重金属时,我分配了ID res_partner_predata_1 ,那么我只需添加下一行(评论后的那一行)到 res_partner 注册表,如下所示:
<?xml version="1.0"?>
<odoo>
<record model="res.partner" id="res_partner_predata_1">
<field name="name">Iron Maiden</field>
<--! This line will add the category-->
<field eval="[(6, 0, [ref('module_name.res_partner_category_1')])]" name="category_id"/>
</record>
</odoo>
答案 1 :(得分:0)
我在使用 odoo 14 时遇到了同样的问题。就我而言,您的解决方案并没有完全奏效。而不是:
<field eval="[(6, 0, [ref('module_name.res_partner_category_1')])]" name="category_id"/>
我必须设置:
<field name="category_id" eval="[(6,0,[ref('res_partner_category_1')])]"/>