Skip to Content
Menu
You need to be registered to interact with the community.
This question has been flagged
1 Odgovori
582 Prikazi

Hello,


We're using json-rpc calls to send, retrieve and manipulate data in Odoo (v15).


One thing I can't seem to figure out is how to create and update translations.

When retrieving data, you can play with the "lang" field in the "context" object, but this doesn't work for a create or an update.


Does anyone have any suggestions on how to achieve this?


Kind regards,

Geert

Avatar
Opusti
Best Answer

Hii,

Use ir.translation Model Directly

here is example of json-rpc :


Here’s how to create or update a French translation for a product name:

{

  "jsonrpc": "2.0",

  "method": "call",

  "params": {

    "service": "object",

    "method": "execute_kw",

    "args": [

      "your_db",

      2,  // user ID

      "your_password",

      "ir.translation",

      "create",

      [{

        "name": "product.template,name",   // model and field

        "res_id": 123,                     // ID of the product

        "lang": "fr_FR",

        "type": "model",

        "value": "Nom traduit du produit",

        "state": "translated"

      }]

    ]

  },

  "id": 1

}

To update, search the translation first:


ids = models.execute_kw(db, uid, password,

    'ir.translation', 'search', [[

        ['name', '=', 'product.template,name'],

        ['res_id', '=', 123],

        ['lang', '=', 'fr_FR']

    ]])


if ids:

    models.execute_kw(db, uid, password,

        'ir.translation', 'write',

        [ids, {'value': 'Nouveau nom en français'}])


i hope this example is help full

Avatar
Opusti
Avtor

Thanks a lot!
That's exactly what I was looking for.

Related Posts Odgovori Prikazi Aktivnost
4
jul. 25
1321
1
jul. 25
648
2
jul. 25
652
1
jul. 25
1829
2
jul. 25
232