Решил вопрос так:
1) все модели в одном модуле
(и основной таблицы и её разбиений)
2) для моделей
(видео, аудио, текст) создал новые action-ы с представлениями через
$this->renderPartial(MY_VIEW)
3) кастомизировал под различные источники представления
(например для видео: youtube, vimeo)
4) для редактирования вызываю из представления для основной таблицы:
$this->beginClip('content');
Yii::app()->runController('MODULE_NAME/'.$data->type.'/ACTION/id/'.$data->id);
$this->endClip('content');
echo $this->clips['content'];
В контроллере main имею и отображение (напрямую из основной таблицы), и редактирование через обращения к контроллерам разбиения.
Как таковые виды основной таблицы без обращения к разбиениям не используются, т.к. для каждого типа требуется кастомизация, но таким нехитрым способом делаю удобный перебор. Для ускорения первые 100 записей разбиения кеширую (индексы ещё строю, само-собой), а выборку из основной таблицы упорядочиваю по типу данных и запрашиваю сразу массивом.
PS: сейчас доделаю проектную часть и буду подробно изучать оптимизации запросов в yii, а то вся база ляжет при выборке с фильтрацией...