[IMP] base: no fallback on _lang_get_id

It was very misleading that
    self.env['res.lang']._lang_get('fr_FR')
used to return any language if fr_FR was not active or did not exited

There is a very frequent need to get a language from the code
There is rarely a need to get any language
This commit is contained in:
Martin Trigaux
2019-08-07 13:04:38 +00:00
parent 86dfe52eab
commit f5cd483216
+2 -5
View File
@@ -179,13 +179,10 @@ class Lang(models.Model):
@tools.ormcache('code')
def _lang_get_id(self, code):
return (self.search([('code', '=', code)]) or
self.search([('code', '=', 'en_US')]) or
self.search([], limit=1)).id
return self.with_context(active_test=True).search([('code', '=', code)]).id
@api.model
@api.returns('self', lambda value: value.id)
def _lang_get(self, code):
""" Return the language using this code if it is active """
return self.browse(self._lang_get_id(code))
@tools.ormcache('self.code', 'monetary')