重写Route以映射到默认路由

时间:2009-08-12 10:12:08

标签: zend-framework map routes rewrite

由于我在这里遇到的问题:Zend_ Controller_ Router_Exception: “xyz” is not specified

我想要这条路线:

":module/:controller/:id"

并将其映射到此:

":module/:controller/:action/id/$id"

是否有可能使用Zend Framework执行此操作?我不想将浏览器转发到该URL。我只想告诉Zend Framework如何处理这条路线。

至于我想这样做的原因,你可以在那个链接的SO问题中找到它们。

1 个答案:

答案 0 :(得分:0)

是的,这是可能的。在我的application.ini中,我用这种方式使用正则表达式指定我的路由:

resources.router.routes.something.type = "Zend_Controller_Router_Route_Regex"
resources.router.routes.something.route = "mymodule/mycontroller/([0-9]+)"
resources.router.routes.something.defaults.module = "mymodule"
resources.router.routes.something.defaults.controller = "mycontroller"
resources.router.routes.something.defaults.action = "myaction"
resources.router.routes.something.map.1 = "id"

我不熟悉定义路由的“:variable”方式,但您可以从我的示例中获取设置默认控制器,模块和操作的功能,而无需在URL中明确定义它们。

相关问题