Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
cakephp:如何从插件加载行为? 编辑 我使用cake bake制作了一个新的插件和行为(使用--plugin),它成功了。不知道我错过了什么。_Cakephp_Cakephp 3.0 - Fatal编程技术网

cakephp:如何从插件加载行为? 编辑 我使用cake bake制作了一个新的插件和行为(使用--plugin),它成功了。不知道我错过了什么。

cakephp:如何从插件加载行为? 编辑 我使用cake bake制作了一个新的插件和行为(使用--plugin),它成功了。不知道我错过了什么。,cakephp,cakephp-3.0,Cakephp,Cakephp 3.0,我正在尝试加载插件的行为。我正试图用我自己编写的插件来实现这一点,但当我尝试加载其他人的插件时,会遇到同样的问题 例如加载 我知道您通常应该使用composer,但这是我加载自己插件的方式 将插件复制到\app\plugins\Cake3Upload 在bootstrap.php中使用 Plugin::load('Cake3Upload',['autoload'=>true]) 访问我的模型的MyModelTable.phpinitialize函数中的行为 $this->addBehavior(

我正在尝试加载插件的行为。我正试图用我自己编写的插件来实现这一点,但当我尝试加载其他人的插件时,会遇到同样的问题

例如加载

我知道您通常应该使用composer,但这是我加载自己插件的方式

  • 将插件复制到
    \app\plugins\Cake3Upload
  • bootstrap.php
    中使用

    Plugin::load('Cake3Upload',['autoload'=>true])

  • 访问我的模型的
    MyModelTable.php
    initialize
    函数中的行为

  • $this->addBehavior('Cake3Upload.Upload')

    然后我得到以下错误:

    缺失行为

    找不到Cake3Upload.UploadBehavior

    确保插件是从config\bootstrap.php加载的,并且 Composer能够自动加载其类,请参见加载插件和 插件-自动加载插件类

    错误:在文件中创建下面的类上载行为: \app\plugins\Cake3Upload\src\Model\Behavior\UploadBehavior.php


    那么名称空间呢?如果不使用composer,则必须构建相同的文件树

    我认为这只是关于上传行为的问题,有这样一个名称空间:

    namespace Xety\Cake3Upload\Model\Behavior;
    
    那么你只需要遵循插件文档:

    Plugin::load('Xety/Cake3Upload');
    


    添加“Xety/”可能

    您是否按照错误消息所示阅读了?是的。这就是为什么我尝试了
    ['autoload'=>true]
    我在烘焙自己的插件时也遇到了同样的错误,所以我认为这与名称间距无关。
    Plugin::load('Xety/Cake3Upload');
    
    $this->addBehavior('Xety/Cake3Upload.Upload');