Odoo Help


This community is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


error in view adding new field to product

on 2/17/13, 3:20 PM 2,603 views

Under OpenERP V7, I am creating a custom module to be able to handle color and size of product.

I created a new object :

from osv import fields, osv
class product_apparel(osv.osv):
        _name = "product.apparel"
        _description = "Object to add colors and size property to a product"
        _columns = {
                'product_id' : fields.many2one('product.product', 'Product', required=True),
                'product_apparel_color' : fields.integer('Color', help='Color'),
                'product_apparel_size' : fields.char('Size',size=3, help='Size')


class product_product(osv.osv):
        _name = 'product.product'
        _inherit = 'product.product'
        _columns = {
                'product_apparel_id' : fields.one2many('product.apparel', 'product_id', 'Apparel Schema')

and a view to display the 2 new properties :

<?xml version="1.0" encoding="utf-8"?>
                <record id="view_product_apparel_form" model="ir.ui.view">
                        <field name="name">product.apparel</field>
                        <field name="model">product.product</field>
                        <field name="inherit_id" ref="product.product_normal_form_view"/>
                        <field name="arch" type="xml">
                                <field name="product_apparel_color"/>

But when installing I am facing the following error :

except_orm: ('ValidateError', u'Error occurred while validating the field(s) arch: Invalid XML for View Architecture!')

Is-it because of my : <field name="name">product.apparel</field> <field name="model">product.product</field> ?

For test, I comment all the block <field name="arch" type="xml"> It erased the message. Then I modify again the xml BUT it seems that even if I restart OpenERP, it doesn't load the xml file: the xml structure is invalid and yet no error message. I also change browser (in case of cache pb) no effect

on 2/20/13, 1:59 PM
Dale E. Moore
On 2/19/13, 11:47 AM

Sorry I don't have time to copy your code and give it a complete work out, but; a thought occurred to me. Perhaps you should refer to the product link product.product_apparel_id (which I would have named product_apparel_ids.)

<field name="arch" type="xml">
    <field name="product_apparel_id"/>

I hope you find this helpful!

Hi, the name of the class has no effect. Only the _name or _inherit attribute is used for the models.

Camptocamp SA, Guewen Baconnier - Software Developer, Camptocamp
on 2/19/13, 11:52 AM

Guewen Baconnier - Software Developer, Camptocamp

--Guewen Baconnier - Software Developer, Camptocamp--
| 6 7 8
Lausanne, Switzerland
--Guewen Baconnier - Software Developer, Camptocamp--

Guewen works at Camptocamp as an Odoo developer since 2010. He is the lead developer of the Odoo Connector framework and the Magento Connector. He is a delegate member of the OCA, a committer and an active contributor to the OCA projects.


Guewen Baconnier - Software Developer, Camptocamp
On 2/18/13, 3:23 AM

You need to add the fields to the product.product model and not product.apparel.

When you inherit a view, you have to define where you want to display your field relatively to the other ones.

For instance:

<field name="arch" type="xml">
    <field name="name" position="after">
        <field name="product_apparel_color"/>

For more information, see the documentation

Or if you need many product.apparel for a product.product, you need to create the complete tree and form views and display them in the product's inherited view:

<field name="arch" type="xml">
    <field name="name" position="after"> <!-- change according to where you want to place it -->
        <field name="product_apparel_id"/>

I specified the position : <field name="name" position="after"> , but error still the same. I was thinking that it's maybe because I have to define the class where to find the property product_apparel on the <field name="model">, that is to say: product_apparel and not product.product, but seems not

on 2/18/13, 4:51 AM

Your Answer

Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!

About This Community

This community is for professionals and enthusiasts of our products and services. Read Guidelines

Question tools

1 follower(s)


Asked: 2/17/13, 3:20 PM
Seen: 2603 times
Last updated: 3/16/15, 8:10 AM