Reputation: 145
ive create a new category named x in the field category(categ_id) under the model product.template i want to load in to data.xml,How can i achieve this?
EDIT
I've tried like this and added data file in the manifest ,and i tried running in diffrent database but it doesnt show up,my xml code is below:
<odoo>
<data>
<record id="product_category_all" model="product.category">
<field name="name">All</field>
</record>
<record id="product_category_1" model="product.category">
<field name="parent_id" ref="product_category_all"/>
<field name="name">MEDICINES</field>
<field name="complete_name">All / MEDICINES</field>
</record>
<record id="product_category_2" model="product.category">
<field name="parent_id" ref="product_category_all"/>
<field name="name">LAB TEST</field>
<field name="complete_name">All / LAB TEST</field>
</record>
<record id="product_category_3" model="product.category">
<field name="parent_id" ref="product_category_all"/>
<field name="name">Vaccine</field>
<field name="complete_name">All / Vaccine</field>
</record>
</data>
</odoo>
Upvotes: 1
Views: 1297
Reputation: 26698
To add the new category, you need to create a new product.category
record.
There is an example in the product data file which defines two categories Saleable
and Expenses
as sub-categories of All
category:
<record id="product_category_all" model="product.category">
<field name="name">All</field>
</record>
<record id="product_category_1" model="product.category">
<field name="parent_id" ref="product_category_all"/>
<field name="name">Saleable</field>
</record>
<record id="cat_expense" model="product.category">
<field name="parent_id" ref="product_category_all"/>
<field name="name">Expenses</field>
</record>
Edit:
You can find at the Odoo Data Files documentation that the ref
attribute is used to provide the value of many2one fields using a valid external id.
All
category is declared in the product data file using product_category_all
as an id. the external id should be:
product.product_category_all
complete_name
is a computed char field with store
set to True
, its value should be computed and returned when requested then stored in the database.
You need to change the parent_id
field definition and remove the complete_name
field.
Example:
<record id="product_category_1" model="product.category">
<field name="parent_id" ref="product.product_category_all"/>
<field name="name">MEDICINES</field>
</record>
<record id="product_category_2" model="product.category">
<field name="parent_id" ref="product.product_category_all"/>
<field name="name">LAB TEST</field>
</record>
<record id="product_category_3" model="product.category">
<field name="parent_id" ref="product.product_category_all"/>
<field name="name">Vaccine</field>
</record>
Upvotes: 2