Вызов виджета из статического метода [РЕШЕНО]

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Закрыто
kirea
Сообщения: 49
Зарегистрирован: 2013.07.30, 15:44

Вызов виджета из статического метода [РЕШЕНО]

Сообщение kirea »

Здравствуйте!
Есть ли в Yii какая-то возможность вызвать виджет со статического метода в классе "class Controller extends CController"?
Просто метод с помещенным в него вызовом виджета мне нужно вызывать как с разных контроллеров, так и с разных других виджетов. А ради одного мелкого метода делать отдельный виджет с его неторопливой производительностью не хотелось.
Нерабочий упрощенный пример:

Код: Выделить всё

class Controller extends CController {
    //----------------------------------------------------------------
    public static function getChildrenOfBlock($itemsList) {
        $str = '';
        foreach ($itemsList as $type) {
            if ($canEdit || $type->visible) {
                ...............
                $modelName = TypeDesc::getModelNameByType($type->type);
                $str .= $this->widget("ext.article.{$modelName}Widget", ['id' => $type->article_id], true); // не работает со стат.метода
            }
        }
        return $str;
    }
   //----------------------------------------------------------------
} 
Как правильно вызвать виджет? Или же есть более правильный другой подход к данной задаче?
Последний раз редактировалось kirea 2014.01.23, 12:12, всего редактировалось 1 раз.
Аватара пользователя
howard
Сообщения: 528
Зарегистрирован: 2012.11.16, 18:55
Откуда: Україна, Вінниця

Re: Вызов виджета из статического метода

Сообщение howard »

Yii::app()->controller->widget()
Агрегатор цен на услуги хостинга - https://hostcost.net
kirea
Сообщения: 49
Зарегистрирован: 2013.07.30, 15:44

Re: Вызов виджета из статического метода

Сообщение kirea »

howard писал(а):Yii::app()->controller->widget()
Спасибо огромное! Так работает
Закрыто