Odoo Help

5

0
1 Answer
7
Avatar

Prakash

--Prakash--

3556
| 6 6 9
Bikaner, 印度
--Prakash--

OpenERP Developer at SunARC Technology

Prakash
2015/1/6 上午12:33

Odoo document link for eval and ref attribute are:-

https://doc.odoo.com/6.0/developer/2_6_views_events/views/design_element/

https://doc.odoo.com/6.0/developer/5_16_data_serialization/xml_serialization/

eval attribute

The eval attribute evaluate its content as if it was Python code. This allows you to define values that are not strings.

Normally, content inside <field> tags are always evaluated as strings.

Example 1:

<field name="value">2.3</field>

This will evaluate to the string '2.3' and not the float 2.3

Example 2:

<field name="value">False</field>

This will evaluate to the string 'False' and not the boolean False

If you want to evaluate the value to a float, a boolean or another type, except string, you need to use the eval attribute:

<field name="value" eval="2.3" /> <field name="value" eval="False" />

ref attribute

The ref attribute allows to fill relations between the records :

<field name="company_id" ref="main_company"/>

The``company_id`` field is a many-to-one relation from the user object to the company object, and main_company is the id of to associate.

 

In xml using eval and ref  attribute to assign the value for field and create new master record:-

Example:- addons/product/product_view.xml

     <record id="product_uom_categ_vol" model="product.uom.categ">
            <field name="name">Volume</field>
        </record>

        <record id="product_uom_gal" model="product.uom">
            <field name="name">gal(s)</field>
            <field name="category_id" ref="product_uom_categ_vol"/>
            <field name="factor_inv" eval="3.78541"/>

            <field name="uom_type">bigger</field>
        </record>

 

2 Comments
Anubía, soluciones en la nube, S.L., Alejandro Santana
2015/1/6 上午7:18

Thanks. I see. But then, this case: is redundant. You do not need "eval" if you are already using "ref", isn't it?

Prakash
2015/1/6 上午7:30

yes either use eval or ref. using ref assign xml record ID value and using eval assign normal value

Ask a Question
Keep Informed
3 follower(s)
About This Community

This platform 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.

Register
Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now