Yii 中的自定义小部件

Custom Widget in Yii

我这样创建新的小部件:

class MyMenu extends CWidget
{
    public function init()
    {

    }
    
    public function run()
    {
        $Items = array(
                    array('label'=>'Home', 'url'=>array('/site/index')),
                    array('label'=>'Add User', 'url'=>array('/user/register')),
                    array('label'=>'View Users', 'url'=>array('/user/index')),
                    array('label'=>'Login', 'url'=>array('/site/login'), 'visible'=>Yii::app()->user->isGuest),
                    array('label'=>'Logout ('.Yii::app()->user->name.')', 'url'=>array('/site/logout'), 'visible'=>!Yii::app()->user->isGuest)
                );
        $this->render('MyMenu', array('Items'=>$Items));
    }
}

并查看此小部件

echo '<div id="Menu">';
$this->widget('zii.widgets.CMenu',array(
                'items' => $Items,
        ));
echo '</div>';

这是我的小部件文件的路径:

但是我得到错误

MyMenu Widget can not find the view "MyMenu"

我哪里做错了?

您应该调用目录 views 而不是 view

源代码显示:http://www.yiiframework.com/doc/api/1.1/CWidget#getViewPath-detail