Odoo 记录规则为什么会跟着 allowed_company_ids 变:_compute_domain_keys 讲透
`ir.rule` 的计算域是缓存过的,而缓存键里最关键的上下文之一就是 `allowed_company_ids`。这就是为什么切换公司后,权限结果会变。
ARTICLE LIBRARY
持续记录源码理解、业务流程、模块开发经验与踩坑总结。
`ir.rule` 的计算域是缓存过的,而缓存键里最关键的上下文之一就是 `allowed_company_ids`。这就是为什么切换公司后,权限结果会变。
从 `ir.ui.view.apply_inheritance_specs()` 和 `_combine()` 讲清 Odoo 为什么会出现“XPath 写对了却没生效”。
销售单确认只做一件事:把订单推进到可履约状态。真正的履约分成补货/出库和开票两条链,分别由 sale_stock 和开票逻辑接管。
从 `ir.rule` 源码看记录规则如何把 `domain_force`、用户组和 `allowed_company_ids` 组合成最终访问域。
Odoo 视图合并不是简单的“后写覆盖前写”。要判断 XPath 真的改到哪里,得先看 locate_node()、apply_inheritance_specs() 和继承树的组合顺序。
从 purchase.order.button_confirm 和 purchase_stock._create_picking 看 Odoo 如何把采购确认变成收货单、stock.move 和后续预留。