【发布时间】:2019-06-18 07:55:58
【问题描述】:
我想将每个产品的 bom_id 放在 sale.order.line 模型中,为此,我使用计算字段来获取 bom id (mrp.bom)。我需要它用于指定的开发,目标是在生产之前根据公司的计算显示消耗的材料。代码如下:
bom_id = fields.Integer(
string='Bom ID',
compute='_get_bom_id'
)
@api.multi
def _get_bom_id(self):
bom_obj = self.env['mrp.bom']
for record in self:
bom_obj_id = bom_obj.search([('product_id', '=', record.product_id.id)])
if bom_obj_id:
record.bom_id = bom_obj_id.id
else:
record.bom_id = 0
问题是该字段不是在 sale.order.line 模型中创建的,但是如果我删除了计算参数,它就可以工作。我已经更新了模块,签入 pgadmin,...我知道问题与代码有关,但不知道在哪里。你能帮助我吗?谢谢
【问题讨论】:
-
计算字段应该在视图中定义。您的视图是否定义了计算字段?
标签: python-3.x field odoo odoo-11