Skip to Content
Menu
This question has been flagged
3 Replies
2209 Views

Hello guys,
i need to show a field on hr application form only when an application is on 2 specific stages.

I created this code but it's not working:

 {"invisible": ["&",["stage_id","=","Phase1"],["stage_id","=","Phase2"]]}

Phase1 and Phase2 are phases names.
Any ideas?
Avatar
Discard
Best Answer

Hi,

Its not a best practice to do comparison using the name, if you can add any other boolean marker in the stag level and using that if you tried to achieve it will be better.

Anyway, here you may have to add a related field of stage name in your hr.application model and then based on it, you have to compare.

stage_name = fields.Char(related='stage_id.name')

XML:

 attrs="{'invisible': [('stage_name', 'in', ('Phase1', 'Phase2'))]}"


Thanks

Avatar
Discard
Author Best Answer

Thanks for the support.

I found a solution by referrinf not to stage names but to stage ids.

The code to add to xml file is:

{"invisible": ["&",["stage_id","!=",4],["stage_id","!=",5]]}
Avatar
Discard
Best Answer

Hi,
Instead of using lists, use tuples, also no need to use '&'. By default it will use the AND case.
{"invisible": [("stage_id","=","Phase1"), ("stage_id","=","Phase2")]}

Try modifying the code like this.

Hope it helps

Avatar
Discard
Related Posts Replies Views Activity
1
Jun 23
2634
2
Jun 23
2156
0
Apr 21
1528
3
Feb 21
17521
4
Oct 20
6602