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

With the old api we could return a domain in the on change function, is this possible with the new api?

Avatar
Discard
Author Best Answer

ok, its possible, but if the function has the decorator @api.one not works.

my error:

    @api.one
    @api.onchange('field_id')
     def onchange_field_id(self):
         relation_ids = [x.id for x in self.field_id.relation_ids]
         return {'domain':{'relation_id': [('id', 'in', relation_ids)]}}

but without @api.one works perfectly

    @api.onchange('field_id')
     def onchange_field_id(self):
         relation_ids = [x.id for x in self.field_id.relation_ids]
         return {'domain':{'relation_id': [('id', 'in', relation_ids)]}}

Avatar
Discard

Short update that it still works for V14/V15. Simply remove the @api.one there as this has been deprecated :-)

@Yenthe onchange that returns a domain is deprecated..

Best Answer

Yes, Its possible an onchange method can return three items (warning, domain, value)

Avatar
Discard
Best Answer

You can also use @api.multi

Avatar
Discard
Related Posts Replies Views Activity
1
Jan 17
6624
1
Aug 25
139
1
Aug 25
296
4
Jul 25
1632
1
Jul 25
920