у меня есть таблица Stream, которая в себе агрегирует посты с соц. сетей.
Есть так же свои собственные сущности типа новости/аудио/видео/фото постов
которые представлены в виде отдельных таблиц, но с небольшой денормализирующей линковокой в таблице Stream
в каждой из этих таблиц есть поле статуса (показывать или не показывать пост)
вот возникла задача синхронизировать статус поста. Те если выключат пост в Stream, то зеркально надо выключить и прилинкованный пост в новости/аудио/видео/фото. Так же и надо изменить состояние в таблице Stream, если изменилось состояние в какой-то связанной таблице.
делать изменение статуса всех связанных таблиц в одной модели мне кажется не верным и совершенно кривым.
делать это путем выполнения в контролере серии методов из моделей вроде как лучше, но все равно мне это решение не нравится
в каком-то контролере можно упустить обновление в какой-нибудь модели.
в общем прошу совета как лучше и правильней организовать обновление статуса в нескольких таблицах
P.S.: всплывает идея использовать события, но я как-то не очень вкурил как они в Yii работают.
Спасибо
Есть так же свои собственные сущности типа новости/аудио/видео/фото постов
которые представлены в виде отдельных таблиц, но с небольшой денормализирующей линковокой в таблице Stream
в каждой из этих таблиц есть поле статуса (показывать или не показывать пост)
вот возникла задача синхронизировать статус поста. Те если выключат пост в Stream, то зеркально надо выключить и прилинкованный пост в новости/аудио/видео/фото. Так же и надо изменить состояние в таблице Stream, если изменилось состояние в какой-то связанной таблице.
делать изменение статуса всех связанных таблиц в одной модели мне кажется не верным и совершенно кривым.
делать это путем выполнения в контролере серии методов из моделей вроде как лучше, но все равно мне это решение не нравится
в каком-то контролере можно упустить обновление в какой-нибудь модели.
в общем прошу совета как лучше и правильней организовать обновление статуса в нескольких таблицах
P.S.: всплывает идея использовать события, но я как-то не очень вкурил как они в Yii работают.
Спасибо