Духовность™
Продвинутый новичок
Как передавать данные в контроллеры? И надо ли их туда передавать?..
Вот, столкнулся с непониманием вопроса. Если мы строим какую-то систему, и имеем FrontController, который парсит URL, выбирает необходимый контроллер и действие. Допустим, мы запросили www.server.com/user/info/vova.html
FrontController, насколько я понимаю, должен запустить контроллер UserController(new User()) с переданным в него объектом User и выбрать метод UserController->info('vova') и передать в этот метод параметр 'vova' (или вызвать UserController->info('vova') теле главного метода - не суть важно).
Так вот, подобные действия подразумевают, что все подчиненные контроллеры, типа UserController имеют одинаковый интерфейс принимаемых параметров. В данном случае контроллер UserController() принимает только один параметр - объект типа User. Но в контроллер может быть передано много моделей! Тогда каким именно образом FrontController сможет понять, что и как передавать в подчиненный контроллер?
ИЛИ
Можно (нужно?) просто инстанцировать модели непосредственно в теле контроллеров, но я не вижу в этом варианте гибкости. Получится, что 1 контроллер == 1 логическая страница сайта. Мы в этом случае не сможем использовать контроллер UserController для какой-либо другой модели, удовлетворяющей интерфейсу User.
Спасибо
Вот, столкнулся с непониманием вопроса. Если мы строим какую-то систему, и имеем FrontController, который парсит URL, выбирает необходимый контроллер и действие. Допустим, мы запросили www.server.com/user/info/vova.html
FrontController, насколько я понимаю, должен запустить контроллер UserController(new User()) с переданным в него объектом User и выбрать метод UserController->info('vova') и передать в этот метод параметр 'vova' (или вызвать UserController->info('vova') теле главного метода - не суть важно).
Так вот, подобные действия подразумевают, что все подчиненные контроллеры, типа UserController имеют одинаковый интерфейс принимаемых параметров. В данном случае контроллер UserController() принимает только один параметр - объект типа User. Но в контроллер может быть передано много моделей! Тогда каким именно образом FrontController сможет понять, что и как передавать в подчиненный контроллер?
ИЛИ
Можно (нужно?) просто инстанцировать модели непосредственно в теле контроллеров, но я не вижу в этом варианте гибкости. Получится, что 1 контроллер == 1 логическая страница сайта. Мы в этом случае не сможем использовать контроллер UserController для какой-либо другой модели, удовлетворяющей интерфейсу User.
Спасибо

сижу и в процессе работы постигаю все.