ajax CTreeView

Здраствуите!!!

Подскажите как реализовать ajax CTreeView.

в контролере




public function actionTreeTest() {

        $my_data = array(

            array(

            'text'     => 'Node 1',

            'children' => array(

            array(

            'text'     => 'Node 1.1',

            'children' => array(

            array(

            'text' => 'Node 1.1.1',

            ),

            )

            ),

            array(

            'text'     => 'Node 1.2',

            'children' => array(

            array(

            'text' => 'Node 1.2.1',

            ),

            )

            ),

            )

            ),

        );

        if(Yii::app()->request->isAjaxRequest){

	    echo 'ttt??';

	}

	else {

        $this->render('treeTest',array('modelTree'=>$my_data));

        }



в view




$this->widget('CTreeView', array(

                          'data' => $modelTree,

                          'unique'=>true,

                          [color="#FF0000"]'url'='TreeTest',[/color]

                          'collapsed'=>true,

                          'htmlOptions' => array('class' => 'treeview-famfamfam',

                                                 )

                           )

);

}



Вот чуть разобрался

в controller




public function actionTreeTest() {

        $my_data = array(

            array('text'     => 'Node 1','children' => array(

            array('text'     => 'Node 1.1','children' => array(

            array('text' => 'Node 1.1.1',),)),

            array('text'     => 'Node 1.2','children' => array(

            array('id'=>121,'text' => 'Node 1.2.1','hasChildren'=>true,

            ),)),),),);

        if(Yii::app()->request->isAjaxRequest) {

            $this->renderPartial('treeTestA',array('mdata'=>$my_data,));

        }

        else {

            $this->render('treeTest');

        }

    }



в view treeTest.php




<?php echo CHtml::beginForm(); ?>

<?php

$this->widget('CTreeView', array(

                     // 'data' =>$data,

                          'unique'=>true,

                          'url'=>'treeTest',

                          'collapsed'=>true,

                          'toggle'=>'js:function() { alert("toggle"); }',

                          'htmlOptions' => array('class' => 'treeview-famfamfam',

                                                 ),

                           )

);

?>

<?php echo CHtml::endForm(); ?>



и в view treeTestA.php




<?php echo CTreeView::saveDataAsJson($mdata);?>



работает.

Вопрос: правильно ли что view реализовано в разных файлах treeTest.php и treeTestA.php.

и где лутше получить id узла


(  id = $GET['root'] )

в controllere или в view treeTestA.php

Также смотрел extension jstree в нем нету ajax’са но сам jquery.tree plugin подерживает. http://www.jstree.com/demo/async_json. Возможно я что то упустил?

Оформи все в {code} теге. то не реал вникнуть в код.

Вот нашел хороший пример: ссылка на пример. Тема CTreeView Sample в разделе форума Tips, Snippets and Tutorials. Красивенько работает, может поможет.

Спасибо за ссылку счас посматрю!!! :)