Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
3 Trả lời
5025 Lượt xem

Hi Community,

 I use self.id inside of compute function that is returning me " <odoo.models.NewId object at 0x7fb107e35be8>".

- I want to get record's id.

Any idea?

Thanks in advance.


Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất
Yes in odoo already saved record in compute not have ID use _origin or ids
for example

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hi!

How does your compute function look and for which entity are you using it? It sounds like the function is called for a new entity before it has actually been saved, which means that it does not yet have an ID. In this case Odoo returns the NewId object you are observing.

If this is the case, your function should be called at a later point and/or there should be a fallback for the case of objects that do not have an ID yet by checking if the returned ID is numeric.

Ảnh đại diện
Huỷ bỏ
Tác giả

already saved record shows the same error

This is impossible to diagnose without seeing your actual code.

Câu trả lời hay nhất

Hello,


If your record is saved then you will get current record using self._origin

Ảnh đại diện
Huỷ bỏ
Tác giả

But its not working in compute function