我试图加载插件的行为。我试图用我为自己编写的插件来做这件事,但是在尝试加载其他人时遇到了同样的问题。
例如加载https://github.com/Xety/Cake3-Upload
我知道你通常应该使用composer,但这是我加载自己的插件的方式。
\app\plugins\Cake3Upload
使用
在bootstrap.php
中加载插件
Plugin::load('Cake3Upload', ['autoload' => true]);
访问我的模型MyModelTable.php
initialize
函数中的行为
$this->addBehavior('Cake3Upload.Upload');
然后我收到以下错误:
缺少行为
找不到Cake3Upload.UploadBehavior。
确保您的插件是从config \ bootstrap.php加载的 Composer能够自动加载其类,请参阅加载插件和 插件 - 自动加载插件类
错误:在文件中创建下面的类UploadBehavior: \应用\插件\ Cake3Upload \ SRC \模型\行为\ UploadBehavior.php
use Cake\ORM\Behavior;
class UploadBehavior extends Behavior
{
}
答案 0 :(得分:0)
那么命名空间呢?如果你不使用作曲家你必须建立相同的文件树。
我认为只是uploadBehavior有这个命名空间:
namespace Xety\Cake3Upload\Model\Behavior;
然后你只需要关注插件doc:
Plugin::load('Xety/Cake3Upload');
和
$this->addBehavior('Xety/Cake3Upload.Upload');
添加' Xety /'也许