跳至內容
選單
此問題已被標幟
2 回覆
3643 瀏覽次數

Hello, I have Odoo8.

Sorry if my question is very simple, but I can't find my mistake.

In a model (sale.order), I have a related field:

acopiado_restante = fields.Float(digits=(8,2), related='pricelist_version_id.monto_acopiado_restante', string="Monto acopiado restante")

The field points to a computed field on model product.pricelist.version.

In a method of sale.order class, I need to use the value of field 'acopiado_restante', specifically in this method:

def onchange_pricelist_id(self, cr, uid, ids, pricelist_id, order_lines, context=None): ...

I try to access to the field using self.acopiado_restante, but I get the error 'sale.order don't have field _ids'.

What is the mistake and how can access to the field? Thanks!

頭像
捨棄
作者

@deep, I want to use the value of 'acopiado.restante' field, still need the _ids value?

作者

@Ramanan, actually I have inherited the model that I want to use. If I do self.pool.get what record of the model I fetch?

最佳答案

you simply inherit model, which you want to use. then inside the method use self.env["your_model_name"] or self.pool.get, you inherit all fields which u want from that model.

頭像
捨棄
最佳答案

I have a feeling, you are not aware of Onchange definition and its semantics, please learn those before proceeding

Onchange will work in both on saved and unsaved records...

In case of saved records you can use self to fetch data, in case of unsaved of records, self will not be available to be used since record is not saved, hence ids wont be there....

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
2
12月 22
14938
1
11月 21
5064
0
1月 21
2357
8
5月 20
7941
0
12月 23
2995