我知道phalcon的多模块应用结构,但是是否可以像以下示例一样具有嵌套的模块结构?我想拥有一个系统,可以在其中将新的子模块(用于后端,前端)热插入系统。当我将新的模块文件夹复制到子模块文件夹中时,路线,菜单条目等应自动扩展。
module-backend
controllers
models etc.
sub-modules
forum
controllers
models
etc.
news
controllers
models
etc.
users
controllers
models
etc.
module-frontend
controllers
models
sub-modules
like backend module structure
有没有将此类模块热插入系统的事件?
是的。我能想到的第一个解决方案是:
在index.php中注册加载程序时:
$loader = new PhalconLoader();
$loader->registerDirs(array(
$config->application->controllersDir,
$config->application->pluginsDir,
));
$loader->registerPrefixes(
array(
"Model_" => $config->application->modelsDir,
)
);
$loader->registerNamespaces(array(
'RemoteApi' => $config->application->librariesDir . 'RemoteApi/'
));
$loader->register();
通知寄存器装置。您可以为不同型号注册不同的前缀:
$loader->registerPrefixes(
array(
"FModel_" => $config->application->forumModels,
"NModel_" => $config->application->newsModels,
)
);
您也可以注册其他内容的前缀。我还添加了这个示例
$loader->registerNamespaces(array(
'RemoteApi' => $config->application->librariesDir . 'RemoteApi/'
));
这样,您可以在不同的名称空间下订购东西。
您可以在应用程序中处理我的模块的组织结构:https://github.com/oleksandr-torosh/yona-cms
这些模块作为单独的实体表示:https://github.com/oleksandr-torosh/yona-cms/tree/master/app/modules
- 索引
- 页
- 项目
- 视频
可能是您的应用程序,您无需从框中使用标准的多模块化结构