Skip to Content
Menu
This question has been flagged
2 Replies
28508 Views

In Odoo 9:

i need create a field like check boxes:

what is your favorite color?  ☐ Blue  ☐Pink  ☐Yellow <--The user only can choice one favorite color, if the user select  ☐Blue then the  ☐Pink or  ☐Yellow field can not be selected, if the user select  ☐Pink, then  ☐Blue or  ☐Yellow can not be selected....

any idea how to create this type of field and function...

Avatar
Discard

Please check the following link for custom module:

https://youtu.be/Xya_fCNr6tw

Thanks & Regards

Best Answer

@Carlos

You could create boolean fields for every color and put those rules in the view definition, like:

from openerp import models, fields, api

class module_example(models.Model):

_name = 'module.example'


blue = fields.Boolean('Blue')

pink = fields.Boolean('Pink')

yellow = fields.Boolean('Yellow')

and in the xml:

<record id="module_example_form" model="ir.ui.view">

<field name="name">myquality list</field>

<field name="model">myquality.myquality</field>

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

<form>

<group>

<field name="blue" attrs="{'invisible': [('pink','=',True),('yellow','=',True)]}"/>

<field name="pink" attrs="{'invisible': [('blue','=',True),('yellow','=',True)]}"/>

<field name="yellow" attrs="{'invisible': [('pink','=',True),('blue','=',True)]}"/>

</group>

</form>

</field>

</record>

Avatar
Discard
Best Answer

Use Axel's answer. But in the condition, put '|' in front of the condition (for OR).

<field name="blue" attrs="{'invisible':['|',('pink','=',True),('yellow','=',True)]}"/>
<field name="pink" attrs="{'invisible':['|',('blue','=',True),('yellow','=',True)]}"/>
<field name="yellow" attrs="{'invisible':['|',('pink','=',True),('blue','=',True)]}"/>

If you use Axel's answer, it's AND, so it will only disappear when 2 options is selected. OP only wanted 1 selection, and the others disappear, meaning OR command.


Thansk Alex!

Avatar
Discard
Related Posts Replies Views Activity
3
Mar 20
39761
2
Dec 17
14897
0
Apr 15
2729
1
Mar 15
8396
0
Jun 19
2854