这个问题的标题很难提出,它可能不是最好的,无论如何。Zend Framework:如何映射完全动态路由
我有一个区域,类别和供应商的网站,很明显的解决方案是使用的
"/:module/:controller/:action"
所以默认路由我的网址会是这个样子
"/region/midlands/category/fashion"
"/region/midlands/supplier/ted-baker"
我想要实现的是这样的一种URL格式,但是这需要涉及一个数据库查询来检查是否存在midlands
,fashion
和ted-baker
"/midlands/fashion"
"/midlands/ted-baker"
我原来的解决方案是使用这样的
"/region/midlands/fashion"
定义为
routes.category.route = "/region/:region/:category"
routes.category.defaults.controller = category
routes.category.defaults.action = index
routes.category.defaults.module = default
routes.category.defaults.category = false
routes.category.defaults.region = false
routes.supplier.route = "/supplier/:supplier"
routes.supplier.defaults.controller = supplier
routes.supplier.defaults.action = index
routes.supplier.defaults.module = default
routes.supplier.defaults.supplier = false
的路线但是,这意味着与region
或supplier
前缀的一切。我几乎需要用插件彻底劫持请求?
达到此目的的最佳方法是什么?
感谢您的任何帮助。
编辑。
@ St.Woland,问题是,我想这条路
/:region/:supplier
要使用此URL
/midlands/ted-baker
但是这条路线有效地覆盖了默认路由器
St.Woland嗨,这个问题是不是与添加的路由。它与我如何最好地处理拥有多条动态路线的能力有关。查看问题编辑。 – 2011-01-07 14:08:22