Skip to Content
Menu
This question has been flagged
1 Reply
2764 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
2816
6
Nov 24
3685
3
May 24
3243
3
Nov 24
43355
1
Apr 23
3877