今天要干一个活,需要在库存模块的stock.move中找到关联的采购订单的订单行信息,stock.move的源码,死活没找到有这么一个字段,于是又想了一个办法,
通过采购订单的订单号和产品id来查找purchase.order.line,经过测试发现,在采购订单中,同一个产品可以有多行,这下傻眼了,这怎么对应起来?
于是抱着试试看看的想法,打开了数据库表 stock_move, 翻到最后的时候竟然发现了purchase_line_id, 他妈的呀,为啥在代码里没有呢,不过,马上就反应了过来。
odoo是支持继承来对模型扩展的,所以说不定在哪个犄角旮旯里对这个模型做了扩展。所以,你如果要找一个字段,不要去看模型的原定义, 因为原来的定义不知道被继承扩展了多少次了,直接看界面或者数据库表,这才是最终的结果。
这算是我折腾了半个多小时的一点小经验吧,记录一下。