我尝试为我的one2many字段使用上下文设置默认值,但我称之为id显示错误:
switch
这是我获取id的代码:
<openerp.models.NewId object at 0xacfbed4c>
这是我的python代码,用于调用id:
<field name="timesheet_ids" context="{'tree_view_ref''estate_vehicle.view_tree_timesheet_activity_transport',
'default_seeddo_id': id}"/>
答案 0 :(得分:0)
在
@api.onchange
方法中添加新的关系记录时,您可以 使用openerp.models.BaseModel.new()
构造函数。这将 创建一个尚未提交到数据库的记录,具有openerp.models.NewId
类型的ID。
请参阅此链接:many2many-one2many-behavior
就像飞行中的变化/计算工作一样,所以基本上在创建时记录集的记录只会在内存中。所以 onchange 旁边的id
还没有因为记录尚未保存。
在这种情况下,您可以将模型引用为ID ,而不是self。
HrEmployee = self.env['hr.employee']
employee_id = HrEmployee.id