تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
3 الردود
7253 أدوات العرض

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
يوليو 25
533
2
يوليو 25
1013
1
يونيو 25
760
1
أبريل 25
957
1
مارس 25
1157