跳至内容
菜单
此问题已终结
1 回复
3884 查看

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),]",
    )
形象
丢弃
编写者 最佳答案

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),]",
    )
形象
丢弃
相关帖文 回复 查看 活动
1
9月 19
4383
7
3月 25
10483
3
5月 24
5310
3
11月 24
45410
1
4月 23
5149