Контроллер приложений против компонента

У меня есть набор функций, совместно используемых всеми моими контроллерами, и я сомневаюсь, следует ли помещать их в компонент, загружаемый из каждого контроллера (или из AppController), или добавлять их в класс AppController ( с видимостью, установленной на protected), поэтому все контроллеры наследуют их.

Что лучше?


person entropid    schedule 06.02.2012    source источник


Ответы (1)


Рекомендуется создание компонента, IMO. Компоненты загружаются отложенно, а также помогают поддерживать чистоту кода. Также в случаях использования, когда вам нужен доступ к некоторым данным модели, вы НЕ хотите загружать модели и вызывать их из AppController!

person Chaitanya Mutyala    schedule 06.02.2012
comment
Не говоря уже о том, что ваш проект может расшириться за счет некоторых контроллеров, которым он не нужен - никогда не знаешь. - person Dave; 07.02.2012
comment
Это немного оффтоп, но как работает ленивая загрузка компонентов? Я имею в виду, как мне позвонить? Выполняя $this->ComponentName->function(), я, очевидно, получаю сообщение об ошибке. - person entropid; 07.02.2012
comment
Компонент загружен? Работает ли ComponentName::function()? - person Chaitanya Mutyala; 07.02.2012