gpt4 book ai didi

php - 使用 Phalcon PHP 框架的嵌套多模块应用程序?

转载 作者:行者123 更新时间:2023-12-04 00:31:13 24 4
gpt4 key购买 nike

我知道 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 \Phalcon\Loader();
$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();

注意registerPrefixes。您可以为不同的模型注册不同的前缀,例如:

$loader->registerPrefixes(
array(
"FModel_" => $config->application->forumModels,
"NModel_" => $config->application->newsModels,
)
);

你也可以为其他东西注册前缀。我还添加了这个例子

$loader->registerNamespaces(array(
'RemoteApi' => $config->application->librariesDir . 'RemoteApi/'
));

这样你就可以在不同的命名空间下订购你的东西。

关于php - 使用 Phalcon PHP 框架的嵌套多模块应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21591172/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com