python-3.x - 退出 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 字段上显示相同的值?
解决方案
在您的字段中添加 store=True。因为计算字段未存储在您的数据库中。
lotter = fields.Char(string="Supplier Lot", compute='_compute_partner', store=True)
推荐阅读
- python - python group by,将列传递给聚合函数参数
- android - 带有错误处理的 RxAndroid Observable 方法调用
- javascript - Browserify - 捆绑加载,但之后不起作用
- php - PhpUnit 和 Travis
- javascript - xsltProcessor.importStylesheet(xsl) 错误
- php - 将 SQL 查询更改为 eloquent 查询
- javascript - PHP循环值到javascript数组中
- c# - 将多个类型组合成一个字节数组
- .net - 了解 .NET 中的并发管理
- python - 如何使用 python 3 创建套接字连接?