Enabling language translation in reports

To enable translations for a report, it needs to be called from a template, using a <t t-call> element with a t-lang attribute.

The t-lang attribute should evaluate to a language code, such as es or en_US. It needs the name of the field where the language to use can be found. This will frequently be the language of the Partner the document is to be sent to, stored at partner_id.lang field. In our case, we don't have a Partner field, but we can use the responsible user, and the corresponding language preference is in user_id.lang.

The function expects a template name, and will render and translate it. This means that we need to define the page content of our report in a separate template, as shown in the following: ...

Get Odoo 10 Development Essentials now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.