Skip to Content
Menu
This question has been flagged
1 Atsakyti
7920 Rodiniai

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

Portretas
Atmesti
Best Answer

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,

Portretas
Atmesti

this is deprecated in odoo14

Autorius

@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)]"/>

Related Posts Replies Rodiniai Veikla
2
bal. 23
2831
2
vas. 25
40532
2
lapkr. 22
2882
2
gruod. 21
4174
0
spal. 21
2285