繁体   English   中英

Yii自定义小部件,加载程序错误

[英]Yii custom Widget, loader error

请帮我解决这个问题(我在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:\xampp\htdocs\yii\framework\YiiBase.php on line 421

但是,如果将窗口小部件文件直接放置在“ protected \\ components”中,则不会发生该错误。 该错误的原因是什么以及如何纠正它? 先感谢您 !

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

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

或者,您可以将其保存在您拥有它的文件夹中,并按以下方式调用它:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM