21 lines
1.1 KiB
Python
21 lines
1.1 KiB
Python
from odoo import api, models, tools
|
||
|
||
|
||
class IrModelFields(models.Model):
|
||
_inherit = "ir.model.fields"
|
||
|
||
@api.model
|
||
@tools.ormcache("model_name")
|
||
def get_field_string(self, model_name):
|
||
"""
|
||
Переопределение функции нам нужно для того, чтобы обойти ограничение платформы.
|
||
В нашем случае при вызове оригинальной функции перевод берется из кэша системы,
|
||
что приводи к тому, что для его появления на экране нужно перезагружать экземпляр.
|
||
Для того, чтобы обойти это мы очищаем кэш.
|
||
|
||
"""
|
||
# TODO Необходимо будет сделать сброс кэша не безусловным, а по какому либо флагу,
|
||
# например сделать режим переводчика, по аналогии с режимом разработчика
|
||
self.env.registry.clear_cache()
|
||
return super().get_field_string(model_name)
|