【问题标题】:Why is a widget class not found in a custom Hubhub module为什么在自定义 Hubhub 模块中找不到小部件类
【发布时间】:2021-05-14 20:42:37
【问题描述】:

我正在开发一个名为资源的自定义模块中的小部件,并且我编写了一个小部件 ResourcesMenu。它有一个名称空间 humhub\modules\resources\widgets,在主视图的 index.php 文件中,它使用了 humhub\modules\resources\widgets\ResourcesMenu,与网站上使用的其他模块相比,这似乎是正确的。

这里是 ResourcesMenu.php 的代码

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',
            'label' => Yii::t('ResourcesModule.base', 'User Videos'),
            'url' => ['/resources/index/videos'],
            'sortOrder' => 100,
            'isActive' => MenuLink::isActiveState('resources', 'resources', 'videos')
        ]));

        parent::init();
    }

}

但是在 index.php 视图文件中, 导致“错误:找不到类 'humhub\modules\resources\widgets\ResourcesMenu'”

【问题讨论】:

    标签: widget humhub


    【解决方案1】:

    如果我添加包含语句,它将找到类文件:

    include "protected/modules/resources/widgets/ResourcesMenu.php";
    

    这是我必须做的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-11-06
      • 1970-01-01
      • 2013-01-17
      • 2019-05-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多