Что делать, если Вам потребовалось внедрить стандартный функционал (к примеру кэширование данных) к некоторым стандартным моделям? Мне в данном случае, на помощь пришел behavior и его великолепные возможности.
Если вкратце, то behavior (поведение), в фреймворке yii2, позволяет расширять контроллеры и модели (или все то что было наследовано от класса «Component») своими дополнительными методами. Работает по аналогии с трейтами в PHP, но не то же самое. Если вас интересует более детальное определение и возможности, для этого загляните на официальный сайт фреймворка.
В данной же статье, я опишу свой небольшой опыт совместной работы кэширования, моделей и поведений.
История. На определенном этапе разработки, потребовалось внедрить кэширование к четырем стандартным моделям:
- Рубрикам
- Категориям
- Регионам
- Городам
