Usare Il Renderpartial All'interndo Di Un Widget?

In questo momento c’è qualche cosa che mi sfugge. Vorrei usare un renderPartial all’interno di un widget. Questo widget si trova all’interno di un modulo. Questo codice mi genera un’eccezione:




public function init {

    $this->renderPartial('ciao');

}



Il problema l’ho risolto banalmente con una require ‘nome_file’; ma mi sembra poco elegante. Avete qualche suggerimento?

Scusa la domanda: la view ‘ciao’ che richiami è una view dei controller del modulo o una view del widget?

ti puo essere utile beginWidget - renderpartial - endWidget ?

Dalla pagina del Widget printo il risultato dei vari render richiamati;

Dall’interno della view, invece, ottengo la renderPartial semplicemente con render();

Non ho un controller, o meglio, ho il controller della view che richiama quel widget. Questo accade perché carico un widget che si trova dentro ad un modulo. Per capirci, posso trovarmi su site/index e dentro la view views/site/index.php richiamare un widget. In questo caso $this->controller all’interno del widget sarà della classe SiteController. Ma se richiamo lo stesso widget da user/profile, il $this->controller sarà un’istanza di UserController.

In verità, mentre vi parlo ho esteso il mio widget con questo:




    protected function renderPartial($filename, $params = array())

    {

        foreach ($params as $varName => $value) {

            $$varName = $value;

        }

        require dirname(__FILE__) . "/../views/{$filename}.php";

    }