编辑,由以下响应中的修复引起的轻微问题:
现在这些规则发生冲突:
$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')));
所以基本上 /management/category/reset 被 view-category 规则捕获,即使我在那里切换顺序。这从来都不是问题。
理想情况下,如果有任何东西被 /management 或 /administration 捕获,它会忽略 :name/category 规则。是否可以使 /management 和 /administration 忽略以前的规则并路由到其控制器操作,因为在这些区域中没有其他特定规则。
老问题:
$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')));
这些规则冲突会阻止分页器在 /category-name/category URL 上工作。
有没有办法把它们结合起来?