问题描述
我遇到一个问题,即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字段上显示相同的值?
解决方法
在您的字段中添加store = True。因为计算字段未存储在数据库中。
lotter = fields.Char(string="Supplier Lot",compute='_compute_partner',store=True)