İçereği Atla
Menü
Bu soru işaretlendi
3 Cevaplar
2221 Görünümler

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
Vazgeç
En İyi Yanıt

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
Vazgeç
Üretici En İyi Yanıt

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
Vazgeç
En İyi Yanıt

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
Vazgeç
İlgili Gönderiler Cevaplar Görünümler Aktivite
1
Haz 23
2653
2
Haz 23
2178
0
Nis 21
1538
3
Şub 21
17553
4
Eki 20
6638