【发布时间】:2011-10-07 14:50:59
【问题描述】:
我想通过 Bootstrap.php 更改我的应用程序的默认路由以使用可选参数,而不是在 application.ini 中。我无法设置所有“逃生”路线,我什至不知道我是否需要设置多条路线,或者我是否可以只设置一条!
路线必须是这样的
":module/:area/:controller/:action"
其中 :area 是可选的,默认为“public”
所以在任何对http://www.example.com/my_module/my_controller/my_action 的访问中,我都可以通过 FC 插件获得以下信息:
$request->getParam('area') = "public"
在http://www.example.com/my_module/my_area/my_controller/my_action 我得到:
$request->getParam('area') = "my_area"
主要的问题是创建所有路由,因此它会转义到 default 模块、index 控制器和 index 动作,以防它们也没有通过并加载 http://www.example.com/ 返回与 http://www.example.com/default/public/index/index 相同。
我想使用 URL Helper 来生成内部 URL,它尊重这个新默认路由上的正确程序集。
编辑:我认为默认 Route 带有模块的故障安全功能,如果它不存在,则默认为控制器,但如何模拟 URL 和模块的其他部分的类似行为在 Bootstrap 中创建它时本身。
谁能给我一些启示或建议我在哪里可以找到一个可行的例子?
【问题讨论】:
标签: php zend-framework bootstrapping zend-route