Openerp 复制新树视图行odoo 9中的最后一个值

Openerp 复制新树视图行odoo 9中的最后一个值,openerp,odoo-9,Openerp,Odoo 9,在树状视图中单击“添加项目”时,我希望在新行中复制上次插入行的值 例如,如果新行中的字段名='Text',我需要字段名字符串'Text' 任何简单的解决方案?如果要从数据库加载默认值,请遵循此方法。 您可以通过重写default_get方法来实现它,在这种情况下,您需要编写逻辑 @api.model def default_get(自身,字段): res=super(类名称,self)。默认获取(字段) last_rec=self.search([],order='id desc',limit=

在树状视图中单击“添加项目”时,我希望在新行中复制上次插入行的值

例如,如果新行中的字段名='Text',我需要字段名字符串'Text'


任何简单的解决方案?

如果要从数据库加载默认值,请遵循此方法。

您可以通过重写default_get方法来实现它,在这种情况下,您需要编写逻辑

@api.model
def default_get(自身,字段):
res=super(类名称,self)。默认获取(字段)
last_rec=self.search([],order='id desc',limit=1)
如果最后记录:
res.update({'your_field_name':last_rec.field_value})
返回res
当你点击添加一个项目时,它将用它的默认值填充新记录,在默认值中我们已经写入了上一条记录的值,它就在那里


如果您想从列表视图加载默认值(列表中最后添加的值),那么这是一项有点棘手的工作,因为您可以执行以下操作。

在父窗体中添加一个字段

last\u added\u value=fields.Char(“last added value”)
为该字段创建onchange方法

@api.onchange('field\u name')
def onchange_字段名(自身):
#父模型必须有多个字段,请在此处使用。
self.parent\u model\u field.last\u added\u value=self.field\u name
在xml领域,您需要这样写


您还需要编写default_get方法

@api.model
def default_get(自身,字段):
res=super(类名称,self)。默认获取(字段)
last_rec=self.search([('parent_field_id','=',self.parent_field_id.id)],order='id desc',limit=1)
如果最后记录:
res.update({'your_field_name':last_rec.field_value})
返回res

您的示例从数据库返回最后一个值,是否可以在树视图中添加最后一行,但不保存在数据库中?对此不确定,它可能会帮助您Technologies Pvt.Ltd在打开新表单并在树视图中添加新行后,单击“添加”按钮后,新行为空。在数据库中保存第一行后,示例将返回数据库中的最后一个值。例如:在数据库中,我有值1,在树视图中,我在单击“添加项目”后添加了3个新行(2,3,4),我需要值4(未保存在数据库中,但在树视图中可见)。Tnx需要帮助,但您的示例不适用于我,请参阅链接Let us。