首页 > 解决方案 > 退出 stock.move.line 中的 lot_id,显示来自计算字段的相同值

问题描述

我遇到了一些问题,即 lot_name 未从同一记录集 stock.move.line 中的另一个计算字段中显示相同的值。下面是我的代码:

class StockMoveLine(models.Model):
_name = 'stock.move.line'
_inherit = 'stock.move.line'

lotter = fields.Char(string="Supplier Lot", compute='_compute_partner')

def _compute_partner(self):
    
    if not self.lotter:
        partner_id = self.env['stock.picking'].search([('name','=',self.reference)]).partner_id.id    
        self.lotter = str(partner_id) 
       
    if self.lot_name == "":
        self.lot_name = self.lotter
    else:
        self.lot_name = "blank"

lot_name 已经存在于基本模块字段中。所以我也想在 lot_name 字段中显示 partner_id。现在我只在我的新计算字段中看到它。我尝试使用@api.onchange,但它仅在彩票的文本字段失去焦点时才有效。如果之前没有值,我该如何在 lotter 和 lot_name 字段上显示相同的值?

标签: python-3.xodooodoo-12

解决方案


在您的字段中添加 store=True。因为计算字段未存储在您的数据库中。

lotter = fields.Char(string="Supplier Lot", compute='_compute_partner', store=True)

推荐阅读