2010-07-08 140 views
0

我已经设置了以下路线采埃孚:Zend框架路由器的问题 - 奇怪的路由行为

$router->addRoute(
    'page', 
    new Zend_Controller_Router_Route('stranka/:niceuri/:id', array('controller' => 'page', 'action' => 'index')) 
); 
$router->addRoute(
    'cat', 
    new Zend_Controller_Router_Route('kategoria/:niceuri/:id', array('controller' => 'category', 'action' => 'index')) 
); 

的问题是,“猫”的路线不断改写其他页面'路线,笑着$此 - > url()路由也是。这意味着,使用“页面”路线并且定义参数'niceuri'的任何链接都具有与使用'猫'路线的当前打开的页面相等的'niceuri'的值 - 这是他们所没有的。 (对不起,这对你有意义吗?)有关如何解决此行为的任何想法?非常感谢。

回答

0

我并不完全明白你的意思,但... 当你在视图中调用$ this-> uri helper时,你可以设置用来组装url的优先路由器的名称。像这样的:

echo $this->uri(array('niceuri' => 'Ololo', 'id' => '123'), 'page'); 

希望这会有所帮助。