I know how to define demo data using XML files and usage of the corresponding xml ids. However, I am not able to understand how most of the product.template records are defined in the odoo product module demo data.
For example, In Odoo v15.0, I can see the definition of below record in product/data/product_demo.xml
❯ grep product_product_27 product/
product/data/product_demo.xml
489: <record id="product_product_27" model="product.product">
However, I am not able to find the definition of product_product_27_product_template (product.template) anywhere, even though it is being referenced in the same file,
❯ grep product_product_27_product_template product/
product/data/product_demo.xml
748: <field name="product_tmpl_id" ref="product_product_27_product_template"/>
Where is product_product_27_product_template defined (product.template) defined?
How is it linked with product_product_27 (product.product)?
When Odoo loads product/data/product_demo.xml file and creates the Drawer
record (id=product_product_27
), it will compute the parent record external id based on the following expression:
'xml_id': f"{data['xml_id']}_{parent_model.replace('.', '_')}",
Odoo will add XML ids for parent records that have just been created