跳至内容
菜单
此问题已终结
3 回复
7234 查看

Hello everyone.

I have a problem obtaining partners using the Odoo webapi. Now the method that I do in my application is doing a bucle of all my ids and, for every id, calling the webapi passing the Id to get the partner.

For example:

for ( i=0; i<partners.length; i++)

     loadPartner(partner(i).id)

In terms of time, this are so slow and heavy (if you have 100 partners, you will do 100 webapi calls). I looked for this in the documentation but I don't see anything about this. So, exists the possibility for get all partners by passing a list of ids? I think that this will be more efficient and fast.

形象
丢弃

Thank you @Odoo Tools, it worked like a charm :)

最佳答案

To get all (active) partner ids: 

self.env['res.partner']._search([]) #You can add this to your Python method and trigger this from JS using RPC. 

To get partner recordest using IDS: 

self.env['res.partner'].browse(IDS). 


形象
丢弃
最佳答案

the answer depends on the implementation of loadPartner, can it handle a list of ids?

I assume that `partners` is an array of object.

partner_ids = _.pluck(partners, 'id');
if (partner_ids.length) {
   loadPartner(partner_ids)                            
}

形象
丢弃
相关帖文 回复 查看 活动
2
7月 25
445
2
7月 25
860
1
6月 25
693
1
4月 25
921
1
3月 25
1100