Odoo Help


Get product name in all languages via API

Joël Gaujard @ Dépil Tech
on 11/24/16, 10:29 AM 1,032 views

Hello everybody (this is my first post),

I use a API client to request a Odoo (version 9e) instance. When I fetch one specific product I want to have its name in all different languages set in the instance (actually French and Spanish). 

I can only have it in French which is my main language. I tried to use a user/password which is language is set in Spanish but I get always the French version. How can I fetch this product name in Spanish ?


Fatih Piristine
On 9/6/17, 4:19 PM

fetch all active langs and copy the context re-run your products queries by setting the context language over loop. that should get you what you need.

def get_translated_path(self, cr, uid, path, lang, context=None):
if lang == request.lang:
return path

ctx = context.copy()
ctx.update({'lang': request.lang})
view = self.pool.get('ir.ui.view')
view_ids = view.search(cr, uid, [('active', '!=', False)], context=context)
for obj in view.browse(cr, uid, view_ids, context=ctx):
if obj.name == path:
ctx.update({'lang': lang})
return view.browse(cr, uid, obj.id, context=ctx).name
return path

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

2 follower(s)


Asked: 11/24/16, 10:29 AM
Seen: 1032 times
Last updated: 9/7/17, 3:47 AM