问题描述
我正在一个名为资源的自定义模块中开发一个小部件,我已经编写了一个小部件 ResourcesMenu。它有一个名称空间 humhub\modules\resources\widgets,在主视图的 index.PHP 文件中,它使用 humhub\modules\resources\widgets\ResourcesMenu,与网站上使用的其他模块相比,这似乎是正确的。>
namespace humhub\modules\resources\widgets;
use Yii;
use humhub\modules\ui\menu\MenuLink;
use humhub\modules\ui\menu\widgets\LeftNavigation;
class ResourcesMenu extends LeftNavigation
{
public function init()
{
/** @var Module $module */
$module = Yii::$app->getModule('resources');
$this->panelTitle = Yii::t('ResourcesModule.base','<strong>Resources</strong> menu');
$this->addEntry(new MenuLink([
'id' => 'resources-index','icon' => 'file','label' => Yii::t('ResourcesModule.base','All Files'),'url' => ['/resources/index'],'sortOrder' => 100,'isActive' => MenuLink::isActiveState('resources','resources','index')
]));
$this->addEntry(new MenuLink([
'id' => 'resources-videos','icon' => 'user','User Videos'),'url' => ['/resources/index/videos'],'videos')
]));
parent::init();
}
}
但是在 index.PHP 视图文件中, 导致“错误:找不到类 'humhub\modules\resources\widgets\ResourcesMenu'”
解决方法
如果我添加一个包含语句,它会找到类文件:
include "protected/modules/resources/widgets/ResourcesMenu.php";
这就是我必须做的。