этой модели есть self.invalidate_model() (17.0).
Так вот,не работает.
В версиях до 17.0 использовался self.clear_caches(), и все работало, при изменении записей метод за @ormcache вызывался повторно.
Я не понимаю, почему в 17.0 не работает self.invalidate_model(), согласно докам:
Invalidate the cache of all records of self’s model, when the cached values no longer correspond to the database values. If the parameter is given, only the given fields are invalidated from cache.
Если заменить на self.env.registry.clear_cache(), то работает как надо. Но как я понимаю, это скидывает ВСЕ кеши, а мне бы только конкретной модели, и через invalidate_model...
Никто не сталкивался?
Странно должно работать. А что в исходниках? Есть аналогичные примеры?
Не, не хочет. При self.invalidate_model() в логе оду пусто, а при self.env.registry.clear_cache() появляется Caches invalidated, signaling through the database: ['default']
Сложно гадать, не видя кода. Но выглядит так, будто рекордсет, который нужно инвалидировать, пустой. Тк в 17.0 довольно много мест, где используется эта конструкция.
Обсуждают сегодня