CodeIgniter не умеет наследовать контроллеры и модели

Мой любимый фреймворк CodeIgniter, который я сейчас использую для написания проекта не предоставляет возможности использовать наследование моделей и контроллеров. По началу написания текущего проекта, впрочем как и к концу наприсания предыдущего, особо не напрягало не возможность наследования. Конечно грех не воспользоваться возможностью расширения системного класса Controller. Но этого хватает только чтоб сделать самое базовое. Максимум – прикрутить инициализацию и объявить абстрактные методы для перегрузки в потомках.

Прошло время, и теперь получается, что копирую кусочки(а не большие куски) в большом количестве между родственными по действию классами. Как же хочется их объединить в одно, сгруппированное по смыслу! Например написать абстрактный класс для обычных страниц(просмотр, редактирование, поиск), чтоб была возможность перегрузить его и сделать потомки которые умеют отображать, например, такие вещи как: страницы помощь сайта, вступление к сайту, контакты, о сайте и прочее..

Есть выход – давно появившлся фрейворк Kohana, основанный на том же CI, его форк, но теперь работающий полностью на пхп5. В нём есть возможность перегружать что угодно хоть сколько раз %). Но переписывать уже поздно.. К плюсам Коханны можно отнести появление ORM и использования хэлперов как статик-классы

Менее глобальный ход – загрузить(дада просто include…) супер класс перед описанием дочернего класса. Очень не красиво, да и не гибко. Зато работает…

Как то-так (с)