Объяснение почему Odoo изобрело свой фреймворк для web, а не использует готовые React или Vue.
Если в кратце, то это связанано с особенностями работы Odoo с модулями и XML шаблонами, так как система должна в последний момент генерировать интерфейс на основе XML описания, что с при использовании современных фреймворков (React, Vue) очень затруднительно из-за их внутренних особенностей и их собственных шаблонизаторов.
#odoo #owl #js
https://github.com/odoo/owl/blob/master/doc/miscellaneous/why_owl.md
Если в кратце, то это связанано с особенностями работы Odoo с модулями и XML шаблонами, так как система должна в последний момент генерировать интерфейс на основе XML описания, что с при использовании современных фреймворков (React, Vue) очень затруднительно из-за их внутренних особенностей и их собственных шаблонизаторов.
#odoo #owl #js
https://github.com/odoo/owl/blob/master/doc/miscellaneous/why_owl.md
GitHub
owl/doc/miscellaneous/why_owl.md at master · odoo/owl
OWL: A web framework for structured, dynamic and maintainable applications - odoo/owl
Наткнулся на занимательную особенность кэширования моделей в системе Odoo причем всплыла она у меня при написании тестов. Она заключается в том что если у вас есть в тесте модель с вычислимые (compute) полями, и расчет этого поля зависит от смежной модели, то Odoo во время прогона теста закеширует состояние этого поля на момент первого обращения.
И из-за это получается что если вы хотите протестить изменение состояния этого поля при изменении данных в смежной модели, вам необходимо каждый раз делать инвалидацию кэша (метод
#odoo #testing #особенность
И из-за это получается что если вы хотите протестить изменение состояния этого поля при изменении данных в смежной модели, вам необходимо каждый раз делать инвалидацию кэша (метод
invalidate_cache())
#odoo #testing #особенность
👍1