Yii自定义Widget,加载器错误

请帮我解决这个问题(我在Windows本地主机上使用Yii,Xampp):

所以...我在“protected components views Magus.php”中创建了一个新的小部件。

 <?php
   class Magus extends CWidget {

   //////////////////////////////
  public function run()
  {
    echo '<p style="color:blue; ">Trallala :) !</p>'; // do something.
  }
    //////////////////////////////

 } //end class

这里使用了它(“protected / views / layouts / main.php”):

 <?php
   $this->widget('/views/Magus');
 ?>

这会导致加载程序(?)错误:

Fatal error: include() [<a href='function.include'>function.include</a>]: 
Cannot redeclare class magus in C:xampphtdocsyiiframeworkYiiBase.php on line 421

但是,如果小部件文件直接放置在“受保护的组件”中,则错误不会发生。 该错误的原因是什么以及如何纠正? 先谢谢你 !


你使用错误的路径。 我建议你把你的小部件的php文件放到protected/components/Magus.php ,然后你可以从视图中调用它

$this->widget('application.components.Magus');

或者你可以将它保存在你拥有它的文件夹中,并像这样调用它:

$this->widget('application.components.views.Magus');
链接地址: http://www.djcxy.com/p/69721.html

上一篇: Yii custom Widget, loader error

下一篇: yii relational datagrid widget