This question has been flagged
1 Reply
8076 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?

Avatar
Discard
Best Answer

Hi,

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 .

Avatar
Discard
Author

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?