Odoo 的 ACL 和记录规则为什么要分两层:权限门禁的真实顺序
很多人把 ACL 和记录规则混成“同一种权限”。其实 Odoo 先用 ir.model.access 判断你能不能碰这个模型,再用 ir.rule 缩小你能看见或操作的记录集合。
ARTICLE LIBRARY
持续记录源码理解、业务流程、模块开发经验与踩坑总结。
很多人把 ACL 和记录规则混成“同一种权限”。其实 Odoo 先用 ir.model.access 判断你能不能碰这个模型,再用 ir.rule 缩小你能看见或操作的记录集合。
很多人以为继承视图只是“贴一段 XML 上去”。实际上,Odoo 会先组装整棵视图树,再按继承顺序逐层应用 XPath 规格,顺序本身就是逻辑的一部分。
从采购目录的取数逻辑、seller min_qty、UoM 显示和包装单位转换讲清楚,为什么目录里看到的价格和数量提示不是拍脑袋给的。
从 qty_received_method、qty_received_manual 和 _inverse_qty_received 出发,解释为什么服务类采购允许手工维护收货数量。
从 action_bill_matching、匹配域和列表视图入口出发,解释采购对账工作台为什么能把采购订单行和账单行拉到同一个界面里处理。
从 purchase.order.line 的 _compute_analytic_distribution 和会计分布模型出发,解释采购分析维度怎样从订单行流向后续账单。