2016-05-11 9 views
0

я пытаюсь установить значение по умолчанию для моего one2many контекста использования поля, но я называю этот идентификатор шоу ошибку:
<openerp.models.NewId object at 0xacfbed4c>Odoo: Получить active_id с Контекст one2many поля

скажите мне, почему?

и это мой код получить идентификатор:

<field name="timesheet_ids" context="{'tree_view_ref''estate_vehicle.view_tree_timesheet_activity_transport', 
              'default_seeddo_id': id}"/> 

и этот мой питона код для вызова ID:

@api.multi 
@api.onchange('seeddo_id','vehicle_id') 
def onchange_vehicle(self): 
    arrVehicle =[] 
    print "test id" 
    seed = self.seeddo_id.id 

ответ

0

When adding new relation records in an @api.onchange method, you can use the openerp.models.BaseModel.new() constructor. This will create a record that is not committed to the database yet, having an id of type openerp.models.NewId .

смотрите по этой ссылке: many2many-one2many-behavior

Как на изменить/вычислить работу на лету, так что в основном во время создания записи набора записей будут только в памяти. Так в стороне onchangeid еще не был доступен, так как запись еще не сохранена.

В этом случае вместо self вы можете ссылаться на модель для id, например.

HrEmployee = self.env['hr.employee'] 
employee_id = HrEmployee.id 
+0

где я использую этот конструктор ?, –

Смежные вопросы