0

我想做的事:

foreach(APP::objects('class','Events') as $event) {
    APP:uses($event,'Events');
}

我做了什么:

App::build(array(
    'Events' => array('%s' . 'Events' . DS)
), App::REGISTER);

“事件”位置显示在输出中,APP::paths()但其中的类未显示APP::objects('class')或我尝试过的任何其他类型。根据 API 'class' 是有效类型。

我试图将所有事件侦听器放在“事件”文件夹中,并在引导程序中调用它们来初始化它们,但我无法让它们显示出来。如果我使用它们单独调用它们,APP::uses('foo','Events')它们工作正常,但是当我应该能够让它们自动加载时,我不得不这样做。

4

1 回答 1

0

在做了一些实验后,我发现注册“事件”路径也将其注册为对象类型。APP:objects('Events')可以通过制作我的新代码来访问 Events 目录中的类:

foreach(APP::objects('Events') as $event) {
    APP:uses($event,'Events');
}

这使得我所有定义的事件都可以在我的控制器中访问。耶

于 2013-06-19T19:06:14.320 回答