콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다
2 답글
30815 화면

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

아바타
취소

Please check the following link for custom module:

https://youtu.be/Xya_fCNr6tw

Thanks & Regards

베스트 답변

@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>

아바타
취소
베스트 답변

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!

아바타
취소
관련 게시물 답글 화면 활동
Time field in odoo 해결 완료
3
3월 20
42707
2
12월 17
16764
0
4월 15
3857
1
3월 15
9404
1
12월 24
1448