在Zend Framework中的application.ini中设置路由

Pau*_*son 5 zend-framework routes

我是一个Zend Framework新手,我正在尝试找出如何在application.ini文件中添加另一条路径.

我目前的路线设置如下:

resources.router.routes.artists.route = /artists/:stub
resources.router.routes.artists.defaults.controller = artists
resources.router.routes.artists.defaults.action = display
Run Code Online (Sandbox Code Playgroud)

...所以/ artists/joe-bloggs使用"艺术家"控制器的"显示"动作来调整有问题的艺术家的个人资料 - 这很好.

我现在要做的是设置另一条路线,以便/ artists/joe-bloggs/random-gallery-name进入"艺术家"控制器的"画廊"动作.

我尝试在application.ini文件中添加一个额外的块(在上面的块下面),如下所示:

resources.router.routes.artists.route = /artists/:stub/:gallery
resources.router.routes.artists.defaults.controller = artists
resources.router.routes.artists.defaults.action = galleries
Run Code Online (Sandbox Code Playgroud)

...但是当我这样做时,/ artists/joe-bloggs中的页面不再有效(Zend尝试将其路由到"joe-bloggs"控制器).

如何在application.ini中设置路由,以便我可以根据"/:gallery"是否存在来更改"艺术家"控制器的操作?

我意识到我可能犯了一个非常愚蠢的错误,所以请指出我的愚蠢并让我走上正确的道路(没有双关语意).

Dar*_*rke 4

尝试颠倒路线的顺序。ZF 按照路由添加的相反顺序匹配路由(以便默认路由是最后匹配的)

如果这不起作用,您可能必须使用可选组件研究正则表达式路由。