这看起来应该非常简单,但我很挣扎。
所以,当我把它放在一个布局中时,下面的行非常有效。也就是说,从"/protected/views/layout/baselayout.php"中的行:
$this->小部件('BuildingList');
它的工作方式完全符合要求。它会创建一个建筑列表。
但是,当在视图中使用同一行代码时,它会失败。也就是说,从"/protected/views/rooms/update.php"我得到
Include(/Var/Www/Html/Yii/Framework/Zii/Widgets/CWidget.Php):失败开放流:没有这样的文件或目录
就其价值而言,CWidget.php绝对不在"/zii/widgets"中。它在"/framework/web/widgets"中
但不知何故,Yii知道在哪里可以从布局中找到CWidget.php,而不是从视图
尝试使用小部件的全名。
如果它在/受保护/组件中,它们:
$this->widget('application.components.BuildingList');
您也可以将其添加到配置文件中的"导入"部分,如下所示:
'import'=> [
'application.models.*',
'application.components.*',
'ext.*'
],