Тихо выяснилось, что мой собственный backend под кодовым названием Winki не так уж далёк от концепции "чистого" MVC. Не понятно, почему я не сделал один маленький шажок. Всего-то надо было расщепить уровни пребставления. То есть отделить вёрстку от "скелета" страницы. На каждой странице существует базовый набор блоков, для каждого известен id, HTML-лэйаут (View) и враппер - источник данных (Model). Для того, чтобы "собрать" страницу нужно "накидать" в шаблон верхнего уровня базовых элементов, для которых определить model и view, а в итоге на выходе контроллера получим HTML плюс порт для пристыковки редакторского интерфейса, осуществляющего управление данным блоком.
Базовые элементы описываются плейсхолдерами вида <span winki:model="wrapper_name" winki:view="template_name" />. Крайне заманчивой выглядит возможность открытия интерфейса управления блоком в новом окне при клике непосредственно на сам блок, или на какую-нибудь картинку внутри него.
← Previous day | (Calendar) | Next day → |