Возникла необходимость запускать CAction прямо из тела другого экшена.
Тоесть както так:
public function actionRunMyAction($name) {
$this->runAction($name);
}
Только вот чтото не хочет работать такой код.
Возникла необходимость запускать CAction прямо из тела другого экшена.
Тоесть както так:
public function actionRunMyAction($name) {
$this->runAction($name);
}
Только вот чтото не хочет работать такой код.
Странная необходимость. Наверняка существует более красивое решение
Class Reference говорит, что передавать надо не имя, а объект. Объект можно создать с помощью createAction.
Да вот встала необходимость писать cms на Yii. Реализовано все в модулях. Админку и тп. Идея была в том, чтобы реализовать модули аля друпал (тобиш закинул - прописал в конфиге - появилось все в админке). Админка должна по идее искать у остальных модулей в папке controllers папку admin, которая содержит экшены для администрирования. Тоесть если они есть - из админки возможно управление модулем.
Если обнаружился экшн create, то почему не направить пользователя по адресу index.php?r=moduleId/controllerId/create вместо вызова экшена из экшена? А может вообще не стоит париться с созданием принципиально новой универсальной модульной CMS? Модули можно подключить для конкретного проекта и вручную, уж извините за оффтоп
Да я все понимаю, это по работе просто) Тут уж вообще логичнее взять друпал, а yii оставить на специфических проектов