单击树视图中的添加项时,我想要从最后插入的行中获取新的行复制值。
EG。 if field name ='Text'在新行中我需要在字段名称字符串'Text'
任何简单的解决方案?
答案 0 :(得分:2)
如果要从数据库加载默认值,请遵循此方法。
您可以通过覆盖default_get方法来实现它,并且您需要编写逻辑。
${env:key}
当您点击添加项目时,它将使用其默认值填充新记录,在默认值中,我们已经写了最后一个记录的值。
如果你想从列表视图中加载默认值(列表中最后添加的值),那么这是一项有点棘手的工作,因为你可以做如下的事情。
在父表单中添加一个字段。
${sys:key}
为该字段创建onchange方法。
@api.model
def default_get(self,fields):
res = super(class_name, self).default_get(fields)
last_rec = self.search([], order='id desc', limit=1)
if last_rec:
res.update({'your_field_name':last_rec.field_value})
return res
在xml字段中,你需要这样写。
last_added_value = fields.Char("Last Added Value")
您还需要编写default_get方法。
@api.onchange('field_name')
def onchange_fieldname(self):
# there must be many2one field of parent model, use it here.
self.parent_model_field.last_added_value = self.field_name