Zend Framework - 路由 - 除了对现有控制器的请求之外,对一个控制器的所有请求

时间:2010-02-16 16:39:07

标签: zend-framework routing

如何创建接受所有未发送控制器请求的路由,但保留对现有控制器的请求。

此代码捕获所有路径

$ route = new Zend_Controller_Router_Route_Regex('(\ w +)',array('controller'=>'index','action'=>'index')); $ router-> addRoute('index',$ route);

我应该如何将/ admin / *或/ feedback / *等路由请求指定给现有的adminController或feedbackController?

3 个答案:

答案 0 :(得分:2)

您不应该创建一个处理它的路线。错误控制器将处理以下三种错误:

  • 控制器不存在
  • 行动不存在
  • 没有匹配的路线

请查看有关如何正确使用它的文档:

http://framework.zend.com/manual/en/zend.controller.plugins.html#zend.controller.plugins.standard.errorhandler.fourohfour

答案 1 :(得分:0)

我只找到了方法 - 如果当前请求是关于管理区域

,则不添加路由
$request = $frontController->getRequest();               

if (!preg_match('/knownController/', $request->getRequestUri())){
    $router->addRoute('index', new Zend_Controller_Router_Route_Regex('(.*)', array('controller' => 'index', 'action' => 'index')));  
}    

答案 2 :(得分:0)