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

How can I find a record in database using its External Id?

Let's say I have the following record in my data file:

<record model="product.product" id="product_to_find"> ... </record> 

How can I retrieve it in code-behind?

頭像
捨棄
最佳答案

You can now do self.env.ref('external.identifier') 

頭像
捨棄
最佳答案

You retrieve it with a code like:

res_model, res_id = self.pool.get('ir.model.data').get_object_reference(cr, uid,'module','product_to_find')
product = self.pool.get(res_model).browse(cr, uid, res_id)

or using the new api

res_model, res_id = self.env['ir.model.data'].get_object_reference('module','product_to_find')
product = self.env[res_model].browse(res_id) 


頭像
捨棄

To complete this answeer... get_object(...) return immediately the record in new API. The same in old API is : xmlid_to_object(...)

最佳答案

Try to search it the same way searching the view id of a certain view 



頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
2
1月 17
5831
2
7月 17
15178
2
11月 15
3898
0
3月 25
822
0
1月 25
2944