2011-02-09 65 views
0

編輯,由下面的響應修復小問題:Zend的路線覆蓋彼此

現在這些規則衝突:

$router->addRoute('view-category',  new Zend_Controller_Router_Route(':id/category/:page', array('module' => 'default', 'controller' => 'category', 'action' => 'view', 'page' => null))); 

    $router->addRoute('management/category', new Zend_Controller_Router_Route('management/category/', array('module' => 'management', 'controller' => 'category', 'action' => 'index'))); 

所以基本上/管理/分類/復位得到由視圖拍攝 - 類別規則,即使我切換順序。這從來沒有成爲一個問題。

理想情況下,如果有任何被捕獲/管理或/管理,它會忽略:名稱/類別規則。是否有可能使管理和/或管理忽略先前的規則並將其路由到其控制器操作,因爲在這些區域中沒有特定的規則。

老問題:

$router->addRoute('view-category',  new Zend_Controller_Router_Route(':id/category', array('module' => 'default', 'controller' => 'category', 'action' => 'view'))); 
$router->addRoute('view-category-page', new Zend_Controller_Router_Route(':id/category/:page', array('module' => 'default', 'controller' => 'category', 'action' => 'view'))); 

這些規則衝突停靠分頁程序上的/類別的名稱/分類URL工作。

有沒有合併它們?

回答

1

嘗試添加「頁面」參數的默認值。

$router->addRoute('view-category', 
    new Zend_Controller_Router_Route(':id/category/:page', 
     array('module' => 'default', 
       'controller' => 'category', 
       'action' => 'view', 
       'page' => null) 
    ) 
); 
+0

謝謝(6charlim) – azz0r 2011-02-10 10:14:30