不遵循模块的语言的PHP Zend路由



我的引导程序中有以下代码。它工作得很好,但是,对于除默认模块之外的任何模块,它都会重定向到默认模块。我怎么能得到这个工作与模块除了默认模块?

protected function _initRoutes()
{
    $this->bootstrap(array('FrontController'));
    $router = $this->getResource('Frontcontroller')->getRouter();
    $router->removeDefaultRoutes();
    $language = new Zend_Controller_Router_Route(
         ':language', array('language' =>'en')
    );
    $module = new Zend_Controller_Router_Route_Module(
      array(
      'module'    => 'default',
      'controller'=> 'index',
              'action'    => 'index'
       ),
       Zend_Controller_Front::getInstance()->getDispatcher(),
       Zend_Controller_Front::getInstance()->getRequest()
    );
    $module->isAbstract(true);
    $default = new Zend_Controller_Router_Route_Chain();
    $default->chain($language);
    $default->chain($module);
    $router->addRoute('default', $default);
}

这是一个例子,如何链接语言路由与默认路由与不同的模块工作。

你不应该在你的$module路由

中指定该模块为'default'
$module = new Zend_Controller_Router_Route_Module(
   array(),
   Zend_Controller_Front::getInstance()->getDispatcher(),
   Zend_Controller_Front::getInstance()->getRequest()
);

相关内容

  • 没有找到相关文章

最新更新