我正在尝试在Phalcon Micro Application中包含一个模块。这可能吗?
我有这样的结构
common/
components/
...
modules/
system
components
...
controllers
...
rest
components
...
controllers
...
www
controllers
...
www/
index.php -> Loads /Phalcon/Mvc/Application($di);
api/
index.php -> Loads /Phalcon/Mvc/Micro($di);
www
从config
我希望api
从config注册其余模块,并包含控制器和该模块的组件。这可能吗?
谢谢, 卡西姆
答案 0 :(得分:2)
显然一切皆有可能!
如果你想保持你的结构与应用程序+微型我认为最好的方法是创建3个配置。
如果您只想将多模块应用程序与单个配置文件一起使用,那么我建议您使用the domain recognition在路由器中使用the setHostName()
method。
然后在配置文件中定义每次使用的api主机名和www主机名。为了更方便,您也可以将它们置于全局常量中。
// an api get route
$router->add("/getsomething",...)
->via("GET")
->setHostname(MyApp::HOSTNAME_API);
// an api post route
$router->add("/postsomething",...)
->via("POST")
->setHostname(MyApp::HOSTNAME_API);
// a www route
$router->add("/",...)->setHostname(MyApp::HOSTNAME_WEB);
答案 1 :(得分:1)
我正在尝试在Phalcon Micro Application中包含一个模块。这可能吗?
是的,没问题!
我希望api从config注册其余模块,并包含控制器和该模块的组件。这可能吗?
查看您的描述和结构我理解它,因为您希望将www模块和api模块的配置分开。这将工作正常,您只需要在www / index.php中包含您的api配置(因为这是您启动应用程序的地方以及您的所有请求将在何处)。祝你好运!