İçereği Atla
Menü
Bu soru işaretlendi
1 Cevapla
7834 Görünümler

hi all,

how i can add filter (domain) for a field with onchange of another field


1) field1: a Many2one field select a value (its a Transient field if i can add as Many2one)

2) field2: another Many2one field set filter to select as selected in field1


regards

Avatar
Vazgeç
En İyi Yanıt

Hi,
You can add a domain based on the onchange of another field as shown below.

@api.onchange(‘field1’)
def _onchange_field1(self):
    return {'domain': {field_2: [(‘field1’, ‘=’, field1.id)]}}

Here you can change condition based on your scenario.
Regards,

Avatar
Vazgeç

this is deprecated in odoo14

Üretici

@Niyas Raphy

then what is implemented, please can you show us, this will help a lot.

As Niyas Raphy pointed out, @api.onchange returning a domain is deprecated in v14 (working for now, but logs a warning message). For a simple domain filter like this, use the domain attribute on the field in the form view.

<field name="field1"/>

<field name="field2" domain="[('field1', '=', field1)]"/>

İlgili Gönderiler Cevaplar Görünümler Aktivite
2
Nis 23
2717
2
Şub 25
40416
2
Kas 22
2798
2
Ara 21
4085
0
Eki 21
2247