2016-05-11 14 views
0

私は私のone2manyフィールドの使用状況のデフォルト値を設定しよう、しかし、私はこのIDショーのエラーを呼び出します。
<openerp.models.NewId object at 0xacfbed4c>Odoo:one2manyフィールドのコンテキストでactive_idゲット

理由を教えて?

とget idのこの私のコード:

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

と、この私のPythonコード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はまだレコードが保存されていないため、利用できませんでした。

この場合、自己の代わりにのようなIDのモデルを参照できます。

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

ここで私はこのコンストラクタを使用しますか? –

関連する問題