Odoo Help


How to apply widget="URL" based on a condition?

AJ Schrafel Paper Corp
on 7/22/13, 11:37 AM 2,893 views

I have a field in my XML that is sometimes a URL, sometimes a phone number. I want to apply the widget="url" when the field contains a website but not when the field contains a phone number. I have a second field that tells the user whether the field contains a phone number of website.

<field name="openerp_val" widget="url" string ="openerp_val" attrs="{'invisible': [('field_diff','=','website')]}"/>
<field name="openerp_val" string ="openerp_val" attrs="{'invisible': [('field_diff','!=','website')]}"/>

I have tried the above and will only show the type of field in the bottom line of code. I think the second line is over writing the first line.

So how can i have a field displayed iwth a widget like url based on a condition?

On 7/22/13, 1:29 PM


I think it will be better if you create two field (in py file openerp_val1 & openerp_val2 with same property then in xml like this )

<field name="openerp_val1" widget="url" string="openerp_val" attrs="{'invisible': [('field_diff','=','website')]}"/>

<field name="openerp_val2" string="openerp_val" attrs="{'invisible': [('field_diff','!=','website')]}"/>

then try it will work... I also tried with same field but its not taking two same field at a time it is only considering last one .

this answer would display the desired result, but it seems more like a work around rather than a solution. No way to conditionally display something as a URL?

AJ Schrafel Paper Corp
on 7/22/13, 6:43 PM

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.


Odoo Training Center

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

Test it now

Question tools

0 follower(s)


Asked: 7/22/13, 11:37 AM
Seen: 2893 times
Last updated: 3/16/15, 8:10 AM