Skip to Content
Menu
This question has been flagged
1 Reply
3309 Views

I have a Many2one field I am adding a domain to through the onchange but I would like the domain to also be applied when the record is first created since the onchange isn't necessarily called then.


This is the domain I am currently returning, and the partner_id is often set through the vals dictionary in the create method.

res["domain"] = {
            "contact_id": [
                ("type", "not in", ["invoice", "delivery"]),
                ("parent_id", "in", [self.partner_id.id]),
            ]
        }

I have also tried doing the following but it does not seem to work.


contact_id = fields.Many2one(
        "res.partner",
        domain="[('type', 'not in', ['invoice', 'delivery']),"
        + "('parent_id', '=', partner_id),]",
    )
Avatar
Discard
Author Best Answer

I was testing the domain with a local version of Odoo and it looks like it wasn't updating the domain of the field properly. So now that I restored my database and loaded in the module again it looks like this is working properly.

contact_id = fields.Many2one(
        "res.partner",
        domain="[('type', 'not in', ['invoice', 'delivery']),"
        + "('parent_id', '=', partner_id),]",
    )
Avatar
Discard
Related Posts Replies Views Activity
1
Sep 19
3436
7
Mar 25
7180
3
May 24
4222
3
Nov 24
44407
1
Apr 23
4365