[FIX] web_editor: translation and no default en_US

Before 036ccbef when writing on qweb field with default language mi_SC:

- writing in mi_SC: wrote on the current res.user language (wrong)
- writing in en_US: wrote on en_US translation (right)
- writing in de_DE: wrote on de_DE translation (right)

but after 036ccbef:

- writing in mi_SC: wrote on mi_SC (right)
- writing in en_US: wrote on mi_SC (wrong)
- writing in de_DE: wrote on mi_SC (wrong)

With this commit, this drawback is also solved by keeping the lang in
context if present.

opw-746776
closes #17917
This commit is contained in:
Nicolas Lempereur
2017-06-30 13:11:51 +02:00
parent c61ae3a3ed
commit 2955bf2651
+1 -1
View File
@@ -48,7 +48,7 @@ class IrUiView(models.Model):
if value is not None:
# TODO: batch writes?
if self.get_default_lang_code() and field != 'arch' and not isinstance(Model._fields[field], fields.Html):
if not self.env.context.get('lang') and self.get_default_lang_code():
Model.browse(int(el.get('data-oe-id'))).with_context(lang=self.get_default_lang_code()).write({field: value})
else:
Model.browse(int(el.get('data-oe-id'))).write({field: value})