Здравствуйте! Такой вопрос.
Есть две таблицы applications(заявления), expert_groups(экспертные группы), связанные между собой таблицей groups_apps(app_id,group_id).
Связи:
'groups' => array(self::MANY_MANY, 'ExpertGroups', 'groups_apps(app_id, group_id)')
'apps' => array(self::MANY_MANY, 'Applications', 'groups_apps(group_id, app_id)')
Так же есть таблицы users(пользователи) связанная с таблицей expert_groups(экспертные группы) через users_apps(user_id,group_id).
Связи:
'users' => array(self::MANY_MANY, 'Users', 'users_apps(group_id, user_id)')
'groups' => array(self::MANY_MANY, 'ExpertGroups', 'users_apps(user_id, group_id)')
Т.е. каждое заявление имеет определенный набор экспертных групп и каждый пользователь имеет определенный набор экспертных групп.
Вопрос: как вывести все заявления в CGridView для определенного пользователя, с учетом того чтобы экспертные группы заявления и пользователя совпадали.