这似乎应该简单易行,但我还在挣扎。
因此,当我在布局中使用它时,以下行很有效。也就是说,来自" /protected/views/layouts/baselayout.php"这一行:
$这 - >插件(' BuildingList&#39);
完全按照应有的方式工作。它创建了一个建筑物清单。
但是,当在视图中使用相同的代码行时,它会失败。也就是说,来自" /protected/views/rooms/update.php"我得到了
包含(/Var/Www/Html/Yii/Framework/Zii/Widgets/CWidget.Php):失败 开放流:没有这样的文件或目录
对于它的价值,CWidget.php肯定不在" / zii / widgets"中。它位于" / framework / web / widgets"
但不知怎的,Yii知道从布局中找到CWidget.php的位置而不是视图
答案 0 :(得分:0)
尝试使用小部件的全名。
如果它位于/ protected / components中,则为:
$this->widget('application.components.BuildingList');
您也可以将其添加到配置文件的“导入”部分,如下所示:
'import'=> [
'application.models.*',
'application.components.*',
'ext.*'
],