Skip to Content
Menu
This question has been flagged
1 Atsakyti
431 Rodiniai

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

Portretas
Atmesti
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

Portretas
Atmesti
Autorius

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

Related Posts Replies Rodiniai Veikla
2
liep. 25
230
2
liep. 25
921
4
liep. 25
773
1
liep. 25
111
2
liep. 25
189