2010-07-08 157 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'); 

希望這會有所幫助。