2012-02-02 78 views
0

是否可以强制Zend_Router检查defaultController是否为其操作,并且如果操作位于默认控制器中,则跳过URL中的控制器名称?仅隐藏URL中的默认控制器名称

即。
/defaultControllerName /动作/ - > /动作/
/nonDefaultContorller /动作/ - >/nonDefaultContorller /动作/

如果它是不可能有什么处理这种情况的惯例?

回答

0

静态路由可以实现这一点,但是您必须为索引控制器中的每个操作添加一个。

So mysite.com/add会去索引控制器添加操作。

protected function _initRoutes() 
{ 
    $frontcontroller = Zend_Controller_Front::getInstance(); 
    $router = $frontcontroller->getRouter(); 

    $route = new Zend_Controller_Router_Route_Static('add', array('controller'=>'index','action'=>'add')); 

    $router->addRoute('add',$route); 
}